MSSQL输出参数:特性与使用(mssql输出参数)
MSSQL输出参数,也称之为“提取变量”,是Microsoft SQL Server中一种技术,它使得在存储过程、用户定义函数或触发器中,可以把值给存储进输出参数。MSSQL输出参数具有以下特性和使用:
一,输出参数的特性
1、 输出参数必须要指定外部程序或变量类型,不能直接分配。比如:
DECLARE @out int;
EXECUTE usp_get_output @out OUTPUT;
2、 输出参数也可以把值“传递到外部”,允许一个存储过程获取一个结果,然后返回给调度者。它不允许多个参数值被传输回调用者。
3、 呼叫存储过程必须定义参数,尤其是输出参数,否则就会报错。
二,输出参数的用法
1、输出参数可以用于直接从存储过程中返回一个结果,例如:
create procedure proc_get_val
@in1 int,
@out int output
as
begin
set @out = @in1 * 2;
end;
go
exec proc_get_val @in1=4, @out=@out output
print @out
— 输出结果8
2、 输出参数可以用于一系列存储过程调用,以获取结果。它可以将结果从各个存储过程中“传输”,例如:
CREATE PROCEDURE proc_calc
@a INT,
@b INT,
@out INT OUTPUT
AS
BEGIN
EXEC multi @a, @b, @c OUTPUT
EXEC add_two @c, @out OUTPUT
END
go
DECLARE @a INT=3, @b INT=4, @out INT
EXEC proc_calc @a, @b, @out OUTPUT
PRINT ‘The result is: ‘, @out
— 输出结果:The result is: 11
综上所述,输出参数在MSSQL中具有先进的功能。它具有可以定义外部程序或变量类型的特性,可以从存储过程返回一个结果以及连接一系列存储过程来获取结果的用法。