读书人

EXEC输出调用外部变量要怎么处理呢

发布时间: 2012-05-16 11:12:12 作者: rapoo

EXEC输出调用外部变量要怎么办呢?

SQL code
--例子declare @a nvarchar(100),@b int;set @b=20;set @a='@b-2';exec(@a)/*这样的输出提示没有申明变量Msg 137, Level 15, State 2, Line 1Must declare the scalar variable "@b".这样怎么把字符串里面的变量@b调用外部的值呢?*/


[解决办法]
sp_executesql
下面的示例创建并执行一个简单的 SELECT 语句,其中包含名为 @level 的嵌入参数。
execute sp_executesql
N'select * from pubs.dbo.employee where job_lvl = @level',
N'@level tinyint',
@level = 35


[解决办法]
SQL code
declare @a int,@b int, @GSResule nvarchare(1000)set @a=3,set @b=4,select @GSResule='select gs from test where gs > @a and gs< @b' exec sp_executesql @GSResule, N'@a int,@b int',@a,@b 

读书人网 >SQL Server

热点推荐