SQL 语句中如何修改 @yu_e 变量以使内部参数生效
可以使用字符串拼接的方式,将变量替换为对应的值。例如:
declare @yu_e varchar(max)
declare @IncludePreConsign varchar(10) = 'true'
declare @IncludeAPConsign varchar(10) = 'false'
declare @szBTypeID varchar(10) = 'BT001'
declare @IncludeARAP varchar(10) = 'true'
declare @IncludePre varchar(10) = 'false'
declare @szendDate varchar(20) = '2022-01-01'
set @yu_e ='EXEC p_XIWA_GetCurrentTotal 'btype','+ @IncludePreConsign+', '+ @IncludeAPConsign+', ''+ @szBTypeID+'', '+ @IncludeARAP+', '+ @IncludePre+', ''+ @szendDate+'', @currentQty OUTPUT, @currentBalance OUTPUT, 0'
print @yu_e
在上面的代码中,我们将所有的参数都定义成了变量,并使用字符串拼接的方式将其替换到@yu_e变量中,从而让其中的参数生效。最终输出的结果如下:
EXEC p_XIWA_GetCurrentTotal 'btype',true, false, 'BT001', true, false, '2022-01-01', @currentQty OUTPUT, @currentBalance OUTPUT, 0
可以看到,参数都已经被正确替换了。
原文地址: https://www.cveoy.top/t/topic/mAEj 著作权归作者所有。请勿转载和采集!