存储过程和在程序中调用

wyfde123 2009-12-23 04:35:53
SQL中存储过程:
create proc [dbo].[pc_GetSerialNum]
(
@name nchar(10),
@pass nchar(10),
@countryId int
)
as
declare @serialNum nchar(10)
select @serialNum=max([serialnum]) from [user] where name=@name
if @serialNum is null
insert into [User](Name,Pass,CountryId,SerialNum) values(@name,@pass,@countryId,'0001')
else
begin
select @serialNum=RIGHT('0000'+cast(CAST(@serialNum as int)+1 as varchar),4)
if @serialNum='9999'
begin
insert into [User](Name,Pass,CountryId,SerialNum) values(@name,@pass,@countryId,'9999')
end
else
begin
insert into [User](Name,Pass,CountryId,SerialNum) values(@name,@pass,@countryId,@serialNum)
end
end
select [name],[pass],[serialnum],[countryid] from [user]


比如我插入(‘wyf’,'123',2)
为什么在数据库中调试时会插入两条记录,
而在代码中调用这段存储过程却只插入一条记录?
...全文
52 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
qqzeng-ip 2009-12-23
  • 打赏
  • 举报
回复
参数问题
flyfly2008 2009-12-23
  • 打赏
  • 举报
回复
如果代码只是调用这个存储过程,是不可能减少插入记录的。肯定是你代码哪里出问题了
shenhui_163 2009-12-23
  • 打赏
  • 举报
回复
路过....关注中

110,535

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧