SQL Server 游标使用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL Server 游标使用相关的知识,希望对你有一定的参考价值。

        1.声明游标
            DECLARE 游标名 CURSOR SELECT语句(注:此处一定是SELECT语句)
        2.打开游标
           OPEN 游标名
        3.读取游标数据
           Fetch [Next | Prior | First | Last | Absolute n | Relative n ]  From 游标名 INTO @name1,@name2...
            WHILE(@@FETCH_STATUS = 0)
                         BEGIN
                         --要执行的SQL语句
                         FETCH NEXT FROM 游标名
                         END

        4.关闭游标
                CLOSE 游标名。关闭后不能对游标进行读取等操作,但可以使用OPEN语句再次打开
        5.释放游标
                DEALLOCATE 游标名。即删除游标,不可再使用

 

例子:

declare @index int;
declare @userId uniqueidentifier;
set @index=1;
declare user_cur cursor for select UserId from T_User order by CreateTime desc
open user_cur
fetch next from user_cur into @userId
while (@@FETCH_STATUS=0)
begin
  update T_User set Sort=@index where UserId=@userId;
  set @index=@index+1;
  fetch next from user_cur into @userId
end

close user_cur;
deallocate user_cur;

 参考链接:http://www.cnblogs.com/youngberry/archive/2009/07/17/1525647.html

以上是关于SQL Server 游标使用的主要内容,如果未能解决你的问题,请参考以下文章

Sql Server 游标操作的例子,使用sql server 游标循环处理数据

避免SQL Server中的游标

sql server 中游标详解

SQL Server游标

SQL Server游标

Sql Server游标的使用