我有一个存储过程说@Create_Dummy1
正在传递一个变量。这在此存储过程中声明为@Dummy_Variable1
。
接下来,我需要从@Create_Dummy2
调用另一个存储过程@Create_Dummy1
。我需要在@Dummy_Variable1
语句中传递exec
。
但如果我尝试这样做,则只传递字符串@Dummy_Variable1
而不是它所持有的值。
答案 0 :(得分:5)
我正在其他程序中执行这样的程序:
DECLARE @childResult int, @loaErrorCode int, @loaErrorMessage varchar(255)
EXEC @childResult = [dbo].[proc_sub_getSomething] @schemes_id = @foo_schemes_i, @errorCode = @loaErrorCode OUTPUT , @errorMessage = @loaErrorMessage OUTPUT
如果它仍然不起作用,您应该编辑您的问题以显示您的确切代码。
答案 1 :(得分:3)
这应该有效:
create procedure Create_Dummy1
(
@Dummy_Variable1 int
)
as
exec Create_Dummy2 @Dummy_Variable1
Go
和
create procedure Create_Dummy2
(
@Dummy_Variable1 int
)
as
Select * From yourTable WHERE tableColumn = @Dummy_Variable1
这就是你所说的:
exec Create_Dummy1 1
希望这有帮助。