存储过程中能否读结果集?

chenKevin 2003-10-20 11:58:17
存储过程中有一条查询语句,是组合而成的,如:
SET @strSQL = 'SELECT * FROM Authors WHERE intSeq = ' + convert(varchar(10),@intSeq)
使用Exec执行如上sql 语句:
EXEC (@strSQL)
然后我想处理EXEC的结果集,注意,要在存储过程中处理,可以假设只取到一条记录,请问如何实现?
...全文
38 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
chenKevin 2003-10-28
  • 打赏
  • 举报
回复
以上方法不行,在执行时会报错:对象名 '#tmp' 无效。
请继续。
xzx1024 2003-10-23
  • 打赏
  • 举报
回复
好象有个table的数据类型,我也正在想这个问题
啊呀 2003-10-23
  • 打赏
  • 举报
回复
set nocount on
SET @strSQL = 'SELECT * into #tmp FROM Authors WHERE intSeq = ' + convert(varchar(10),@intSeq)
EXEC (@strSQL)
Select * from #tmp
happy20032003 2003-10-20
  • 打赏
  • 举报
回复
用游标啊
perfwell 2003-10-20
  • 打赏
  • 举报
回复
跟直接执行一样处理
eg:
SET @strSQL = 'SELECT * into #tmp FROM Authors WHERE intSeq = ' + convert(varchar(10),@intSeq)
EXEC (@strSQL)
Select * from #tmp
wzh1215 2003-10-20
  • 打赏
  • 举报
回复
少了半边')'
exec('SELECT * FROM Authors WHERE intSeq = ' + convert(varchar(10),@intSeq))
wzh1215 2003-10-20
  • 打赏
  • 举报
回复
在存储过程中用:
exec('SELECT * FROM Authors WHERE intSeq = ' + convert(varchar(10),@intSeq)
动态执行就行了!
txlicenhe 2003-10-20
  • 打赏
  • 举报
回复
跟直接执行一样处理
eg:
SET @strSQL = 'SELECT * into #tmp FROM Authors WHERE intSeq = ' + convert(varchar(10),@intSeq)
EXEC (@strSQL)
Select * from #tmp


22,207

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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