小编Ica*_*roo的帖子

将变量作为参数传递给存储过程

我有一个带有 SELECT 语句和两个参数的存储过程。我想从另一个声明了变量的存储过程调用此存储过程,并使用该变量作为参数之一。

当我尝试这个时:

EXEC [dbo].[Testo] @cd_order = 23, @cd_substep = 33
Run Code Online (Sandbox Code Playgroud)

它返回一些行作为结果,但是当我尝试这样做时:

set @temp_var1 = ( Select cd_substep FROM ....Where...)

EXEC [dbo].[Testo] @cd_order = 23, @cd_substep = @temp_var1
Run Code Online (Sandbox Code Playgroud)

结果是空的。

该过程将填充一个表变量:

INSERT INTO @Var1Table EXEC [dbo].[Testo] 23, @cd_substep 
Run Code Online (Sandbox Code Playgroud)

仅当我使用静态值时它才有效。如何使用变量作为参数?

t-sql sql-server stored-procedures

0
推荐指数
1
解决办法
5947
查看次数

标签 统计

sql-server ×1

stored-procedures ×1

t-sql ×1