SqlServer中,用exec处理sql字符串中含有变量,提示:必须声明标量变量@(已解决!)
declare @tssj nvarchar(100) -- 外部变量
declare @Sql_Sql nvarchar(100) -- 存sql字符串变量
set @Sql_Sql =N'select @tssj=jpk from b where bzmc=''中国'''
EXEC sp_executesql @Sql_Sql,N'@tssj int output',@tssj output
select @tssj
N'@tssj int output',@tssj output
这句是关键,是传入变量参数和传出变量参数!
======================================================= 【多参数的方法】
set @Sql_Sql =
N'
select top 1 @m_zw=zw,@m_zh=temp from ket where zd=''ddd''
'
print @Sql_Sql
EXEC sp_executesql @Sql_Sql,N'@m_zw varchar(1000) output,@m_zh int output',@m_zw output,@m_zh output