SQL server 游标使用实例

--创建一个游标
DECLARE my_cursor CURSOR FOR 
SELECT id, Bran_number, Bran_taxis FROM dbo.Base_Branch;
--打开游标
OPEN my_cursor;
DECLARE @id INT;
DECLARE @Bran_taxis VARCHAR(100);
DECLARE @bran_number VARCHAR(100);
DECLARE @tagint INT;
SET @tagint=1;
--循环游标
FETCH NEXT FROM my_cursor
INTO @id, @bran_number, @Bran_taxis; --获取my_cursor的下一条数据
WHILE @@FETCH_STATUS=0 BEGIN
    PRINT(@tagint);
    UPDATE dbo.Base_Branch
    SET Bran_taxis=@tagint, Bran_SonCount=(SELECT COUNT(*)FROM dbo.Base_Worker WHERE Worker_department=@bran_number)
    WHERE id=@id;
    SET @tagint=@tagint+1;
    FETCH NEXT FROM my_cursor
    INTO @id, @bran_number, @Bran_taxis; --获取下一条数据并赋值给变量
END; --关闭释放游标
CLOSE my_cursor;
DEALLOCATE my_cursor;

  

作者:罗敏贵
邮箱:minguiluo@163.com
QQ群:34178394 建群 主要是寻找志同道合的人士一起学习和讨论自己的所学所思
出处:http://luomingui.cnblogs.com/
说明:专注于微软平台项目架构、熟悉设计模式、架构设计、敏捷个人和项目管理。现主要从事WinForm、ASP.NET、等方面的项目开发、架构、管理工作。文章为作者平时里的思考和练习,可能有不当之处,请博客园的园友们多提宝贵意见。
知识共享许可协议本作品采用知识共享署名-非商业性使用-相同方式共享 2.5 中国大陆许可协议进行许可。

原文地址:https://www.cnblogs.com/luomingui/p/14772070.html