declare@qanvarchar(200) declare@iint declare@sqlnvarchar(255) set@i=1 while@i<=5 begin set@sql='select q'+convert(nvarchar(2), @i) +' from ImportSurveyInfo' set@i=@i+1 declare cur cursorforexec@sql open cur fetch cur into@qa select@qa close cur deallocate cur end
应该这样
declare@qanvarchar(200) declare@iint declare@sqlnvarchar(255) set@i=1 while@i<=5 begin set@sql='declare cur cursor for select q'+convert(nvarchar(2), @i) +' from ImportSurveyInfo' set@i=@i+1 exec(@sql) open cur fetch cur into@qa select@qa close cur deallocate cur end