sql中两种返回值的接收与应用

看了一下书本上的内容,也操作了一下,感觉挺有收获的,就想记录下来,与大家分享:

 大家看看下面的例子,不理解的与我联系:

alter proc spTest_2
@fname varchar(20),
@lname varchar(20),
@DeptID smallint output --设置为输出参数
as
if((@fname=''or (@lname=''))
    
return -1 --失败返回值,这个返回值与 output不一样的,要注意
insert into mytable1 values
(
@fname,@lname)

select @DeptID=scope_identity()--返回刚插入的新行的自动增长字段的值
return 0 --成功返回值
go


declare @value int --定义一个变量,用来作为输出参数
declare @myva int
exec @myva=spTest_2 '','ting',@value output --执行存储过程 两种返回值的接收方式不一样。
if(@myva=0)
begin
select @value --查询返回值
end
else --如果返回值为-1,则让它显示出来
begin
select @myva
end
原文地址:https://www.cnblogs.com/wantingqiang/p/1327588.html