日期:2014-05-18  浏览次数:20434 次

从游标中取数据处理 ,第一次取的也要处理,但是太冗余了,有没有高手指点一下。
--从游标中取数据处理 ,第一次取的也要处理,但是太冗余了,有没有高手指点一下。
--大概代码如下
declare mycursor CURSOR FOR .....
open cursor
fetch next from mycursor into .....
--这里得到的数据处理,跟下面的处理代码一样,太冗余了
while @@FETCH_STATUS = 0
begin
fetch next from mycursor into .....
--接着是从游标里面得到数据的处理过程
end

close mycursor 
deallocate mycursor

------解决方案--------------------
SQL code
declare   mycursor   CURSOR   FOR   ..... 
open   cursor 
fetch   next   from   mycursor   into   ..... 
while   @@FETCH_STATUS   =   0 
begin 
---从游标里面得到数据的处理过程
-- 处理已经fetch的结果
-- 处理结束后再次fetch
fetch   next   from   mycursor   into   ..... 
end 

close   mycursor   
deallocate   mycursor