首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

exec 返回值,该怎么处理

2013-12-06 
exec 返回值例如 exec (select Name from admin where id 1)执行结果是 :admindeclare @name varchar(20

exec 返回值
例如 

exec (select Name from admin where id = 1)

执行结果是 :admin

declare @name varchar(20)

怎么把这个结果赋值给变量 @name?
[解决办法]
改用sp_executesql
[解决办法]
引用:
exec 括号里面的是拼接的sql。


declare @name varchar(20),@tsql nvarchar(4000)

select @tsql=N'select @name=Name from admin where id=1'

exec sp_executesql @tsql,N'@name varchar(20) output',@name=@name output

select @name

[解决办法]
这个建议用sp_executesql:



declare @name nvarchar(20)

exec sp_executesql N'select @name = Name from admin where id = @id',
                   N'@name varchar(20) output,@id int',
                   @name out,1


select @name

[解决办法]

DECLARE @ta TABLE (NAME varchar(50))
DECLARE @NAME varchar(50)
INSERT @ta EXEC('select Name from admin where id = 1')
SELECT @NAME=NAME FROM @ta

热点排行