declare @MaxRun_Times_flu int
select  @MaxRun_Times_flu  = 5declare @cur_flu cursor for select top @MaxRun_Times_flu fname from #tmp_file
不清楚这样写有啥不对的地方

解决方案 »

  1.   

    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变量
      

  2.   

    declare @cur_flu cursor for select top @MaxRun_Times_flu fname from #tmp_file 这个语句本身有问题。游标是一行一行的来取的,你一次取5行,行得通吗?
      

  3.   

    对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 
      

  4.   

    declare @MaxRun_Times_flu int 
    set  @MaxRun_Times_flu  = 5 declare cur_flu cursor for select top (@MaxRun_Times_flu) fname from files 
    这样就没问题了