cursor 定义错误 请指教

yiyi0518 2009-11-07 03:12:53
declare @MaxRun_Times_flu int
select @MaxRun_Times_flu = 5

declare @cur_flu cursor for select top @MaxRun_Times_flu fname from #tmp_file


不清楚这样写有啥不对的地方
...全文
58 12 打赏 收藏 举报
写回复
12 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
zxl616zxl 2009-11-08
定义游标不要@符号
  • 打赏
  • 举报
回复
zxl616zxl 2009-11-08
declare @MaxRun_Times_flu int
set @MaxRun_Times_flu = 5

declare cur_flu cursor for select top (@MaxRun_Times_flu) fname from files


这样就没问题了
  • 打赏
  • 举报
回复
gxzh0817 2009-11-08
对2005 来说应该可以的啊
  • 打赏
  • 举报
回复
yiyi0518 2009-11-08
我用的是2000 的, 看样子还是得用别的方法了, 谢谢各位了~~
  • 打赏
  • 举报
回复
cxmcxm 2009-11-07
对2000不支持top 变量
对2005 top 后变量需加括号
declare @MaxRun_Times_flu int 
select @MaxRun_Times_flu = 5

declare @cur_flu cursor for select top (@MaxRun_Times_flu) fname from #tmp_file

  • 打赏
  • 举报
回复
declare @cur_flu cursor for select top @MaxRun_Times_flu fname from #tmp_file

这个语句本身有问题。游标是一行一行的来取的,你一次取5行,行得通吗?
  • 打赏
  • 举报
回复
yiyi0518 2009-11-07
要把文件名取出来 然后倒入数据库的


换个思路,把文件名全部取出来存变量里, 用的时候再分割开来也可以做
  • 打赏
  • 举报
回复
feixianxxx 2009-11-07
。。。扯了。。。
游标有这么用么?
  • 打赏
  • 举报
回复
SQL77 2009-11-07
[Quote=引用 3 楼 yiyi0518 的回复:]
引用 1 楼 sql77 的回复:
SQL codedeclare@MaxRun_Times_fluintselect@MaxRun_Times_flu=5declare@cur_flucursorforEXEC('select top'+LTRIM(@MaxRun_Times_flu )+' fname from #tmp_file')

不支持TOP变量


还是不对哦  郁闷了~·
[/Quote]
那你干嘛要一条一条的取呀
  • 打赏
  • 举报
回复
yiyi0518 2009-11-07
[Quote=引用 1 楼 sql77 的回复:]
SQL codedeclare@MaxRun_Times_fluintselect@MaxRun_Times_flu=5declare@cur_flucursorforEXEC('select top'+LTRIM(@MaxRun_Times_flu )+' fname from #tmp_file')

不支持TOP变量
[/Quote]

还是不对哦 郁闷了~·
  • 打赏
  • 举报
回复
--小F-- 2009-11-07
支持11 这个需要用动态语句
  • 打赏
  • 举报
回复
SQL77 2009-11-07
declare @MaxRun_Times_flu int 
select @MaxRun_Times_flu = 5

declare @cur_flu cursor for
EXEC('select top '+LTRIM(@MaxRun_Times_flu )+' fname from #tmp_file ')


不支持TOP变量
  • 打赏
  • 举报
回复
相关推荐
发帖
MS-SQL Server
加入

3.3w+

社区成员

MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
申请成为版主
帖子事件
创建了帖子
2009-11-07 03:12
社区公告
暂无公告