动态SQL的问题

tigerjacky 2004-12-23 05:06:54
能不能实现如下功能的语句?
declare @A varchar(16)
declare @bb varchar(256)
set @bb = 'select TOP 1 @A = col1 from table1'
exec(@bb)
select @A
wo我的意思是要取出@A的值
...全文
83 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
zlp321002 2004-12-24
  • 打赏
  • 举报
回复
大量使用就自己封装成函数,
然后调用处理!!
tigerjacky 2004-12-24
  • 打赏
  • 举报
回复
这里的@A需要取出来,后面要用的。看来只有用一楼的了?
jijiang1981 2004-12-23
  • 打赏
  • 举报
回复

declare @bb varchar(256)
set @bb = 'declare @A varchar(16);select TOP 1 @A = goodsid from goods;select @A'
exec(@bb)
tigerjacky 2004-12-23
  • 打赏
  • 举报
回复
有没有简单点的实现?因为要大量使用………………
NinGoo 2004-12-23
  • 打赏
  • 举报
回复
3: 输出参数

eg:
declare @num,
@sqls
set @sqls='select count(*) from ' + @servername + '.a.dbo.b'
exec(@sqls)
我如何能将exec执行的结果存入变量@num中

declare @num int,
@sqls nvarchar(4000)
set @sqls='select @a=count(*) from '+@servername+'.a.dbo.b'
exec sp_executesql @sqls,N'@a int output',@num output
select @num

27,579

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 应用实例
社区管理员
  • 应用实例社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧