sql procedure

qq34448635 2009-04-13 04:38:50
创建 procedure 时间.将表名做为参数
在.执行 执行时 exec ('select * from '+ tableName)
这样子 可以实现通过参数传入表名 然后select 出数据,
如果我在这个procedure中传建了游标 ,希望在游标对select 出来数据进行处理.发现就不能用exec ('select * from '+ tableName),
有办法解决吗?


example:
DECLARE TEST_CURSOR CURSOR
FOR
exec ('select * from min5WHAUTD')
--SELECT TOP 2000 dataTime,openPrice FROM #TEMPTABLE ORDER BY dataTime DESC

OPEN TEST_CURSOR
...全文
79 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
wubiqiang 2009-04-14
  • 打赏
  • 举报
回复
有一个比较简单的方法就是使用临时表


example:

DECLARE table #aaaa

exec ('insert into #aaa (....) select * from min5WHAUTD')


DECLARE TEST_CURSOR CURSOR
FOR select * from #aaa

OPEN TEST_CURSOR


类似这样的写法
qq34448635 2009-04-14
  • 打赏
  • 举报
回复
这个问题难道没有办法解决吗/??
qq34448635 2009-04-14
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 wubiqiang 的回复:]
有一个比较简单的方法就是使用临时表


example:

DECLARE table #aaaa

exec ('insert into #aaa (....) select * from min5WHAUTD')


DECLARE TEST_CURSOR CURSOR
FOR select * from #aaa

OPEN TEST_CURSOR


类似这样的写法
[/Quote]



ok 谢谢
claro 2009-04-13
  • 打赏
  • 举报
回复
帮顶。

22,211

社区成员

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

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