我可以更改execute sp_executesql上的输入参数值吗?
有人知道在执行sp_executesql期间是否可以更改输入变量吗 例如,我想将@var value更改为'bye'我可以更改execute sp_executesql上的输入参数值吗?,sql,tsql,dynamic-sql,Sql,Tsql,Dynamic Sql,有人知道在执行sp_executesql期间是否可以更改输入变量吗 例如,我想将@var value更改为'bye' declare @var varchar(10) = 'hello' declare @Query nvarchar(max) = 'print @var set @var = ''bye'' print @var' EXEC SP_EXECUTESQL @Query, N'@var varchar(10)', @var -- Execute Query Statement
declare @var varchar(10) = 'hello'
declare @Query nvarchar(max) = 'print @var set @var = ''bye'' print @var'
EXEC SP_EXECUTESQL @Query, N'@var varchar(10)', @var -- Execute Query Statement
print @var
上次我打印@var时,我希望它打印“再见”,但打印“你好”
在不声明输出变量的情况下可以实现我的目标吗
提前感谢您必须使用
输出
参数:
declare @var varchar(10) = 'hello'
declare @Query nvarchar(max) = 'print @var set @var = ''bye'' print @var'
EXEC SP_EXECUTESQL @Query, N'@var varchar(10) output', @var output
print @var -- This prints bye
请注意,输出既在变量声明中,也在
sp_executesql
的实际参数中。。。这很简单!非常感谢。