在SQL exec中为变量赋值

时间:2010-08-02 08:56:39

标签: sql-server-2005

可以为从exec @sql?:

返回的变量赋值
set @var= exec calculate 'param' are this true

3 个答案:

答案 0 :(得分:2)

DECLARE @ret INT
DECLARE @output INT

EXEC @ret = [proc] @input, @output OUTPUT

SELECT @ret, @output

@ret是返回值:RETURN -1
@output是任意类型的可分配变量:SET @output = 123

答案 1 :(得分:0)

您应该使用存储过程的输出参数:

DECLARE @output1 INT
EXEC [proc] @input, @output1 OUTPUT

PRINT @output1

答案 2 :(得分:0)

函数是执行常用计算的好地方。

CREATE FUNCTION dbo.ufnAddIntegers
    (@pint1 as int, @pint2 as int)
RETURNS int
AS
BEGIN
   return @pint1 + @pint2
END
go

declare @intResult int
set @intResult = dbo.ufnAddIntegers(3, 4)
select Result = @intResult

/*
Result
-----------
7
*/