抱歉,如果之前有人问过这个问题,但我找不到任何对我有用的东西。
我有一个有两个 OUTPUT 参数的存储过程:
CREATE PROCEDURE dbo.xxx
.
.
.
@param1 INT OUTPUT,
@param2 INT OUTPUT
AS
我想从另一个存储过程调用它。
当有一个 OUTPUT 参数时,我知道该怎么做,但我不知道如何调用它,所以我也得到了第二个参数的值。有任何想法吗?
提前致谢 :)
最佳答案
这是一种方法:
具有两个输出参数的示例程序
CREATE PROCEDURE SumAndMultiply
(
@In int,
@OutSum int output,
@OutMultiply int output
)
AS
SELECT @OutSum = @In + @In,
@OutMultiply = @In * @In
GO
执行第一个程序的示例程序:
CREATE PROCEDURE executeSumAndMultiply
(
@In int
)
AS
DECLARE @Out1 int,
@Out2 int
EXEC SumAndMultiply @In = @In, @OutSum = @Out1 OUTPUT, @OutMultiply = @Out2 OUTPUT
SELECT @Out1 As Out1, @Out2 As Out2
GO
执行第二个程序:
EXEC executeSumAndMultiply 3
结果:
Out1 Out2
6 9
See a live demo on rextester
关于sql - 如何从另一个存储过程调用具有两个 OUTPUT 参数的存储过程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49029333/