用exec调用带有output输出参数的存储过程,想要得到输出参数的值,必须在调用参数后面加output关键字,如:
declare @value int
exec up_test 2,3,@value output
print @value
这样@value才会有值,如果没有output啥都print不出来
所以定义@value 类型为output类型:
up_test的存储过程定义如下:
Alter PROCEDURE [dbo].[up_test]
@value1 int,
@value2 int,
@value int output
AS
BEGIN
Set @value=@value1+@value2
return @value
END
GO