未返回输出参数

问题描述:

为什么此脚本返回一对空值?我正在使用SQL Server 2008,脚本在MSSMS中运行。未返回输出参数

CREATE PROCEDURE proc_Test 
    (
    @Input int, 
    @Out1 int OUTPUT, 
    @Out2 varchar(10) OUTPUT 
    ) 

AS 

BEGIN 
    SET NOCOUNT OFF 
    SET @Out1 = 100 + @Input 
    SET @Out2 = 'result=' + CONVERT(varchar,@Out1) 
    RETURN 

END 

GO 

DECLARE @Out1 int, @Out2 varchar(10) 
exec proc_Test @Input=1, @[email protected], @[email protected] 
select @Out1, @Out2 

你需要指定瓦尔作为输出:

DECLARE @Out1 int, @Out2 varchar(10) 
exec proc_Test @Input = 1, @Out1 = @Out1 output, @Out2 = @Out2 output 
select @Out1, @Out2 

由于风格小事尽量不要来命名收到了效果一样的参数变量的增值经销商;它变得太混乱了。

+0

谢谢 - 我以为我错过了一些非常明显的东西。 – 2010-03-18 07:57:43

+0

@Mark:np。我做了很多次! – 2010-03-18 08:31:21