sql server 游标的使用

 1 -- zhxia
 2 DECLARE @username VARCHAR(20),@flag BIT,@ncount int
 3 DECLARE mycursor CURSOR FOR --声明游标
 4 SELECT user_name FROM RBAC_User
 5 OPEN mycursor --打开游标
 6 SET @flag=0
 7 SET @ncount=0
 8 WHILE(@flag=0)
 9 BEGIN
10  SET @ncount=@ncount+1
11  FETCH mycursor INTO @username --循环读取游标
12  IF(@@FETCH_STATUS=0)
13  UPDATE RBAC_User SET User_PassWord=@ncount WHERE User_Name=@username
14  ELSE
15  SET @flag=1
16 END
17 CLOSE mycursor --关闭游标
18 DEALLOCATE mycursor --释放资源
19 
20 @@FETCH_STATUS
21 返回被 FETCH 语句执行的最后游标的状态,而不是任何当前被连接打开的游标的状态。
22 @@FETCH_STATUS=0 成功
23 @@FETCH_STATUS=-1 FETCH 语句失败或此行不在结果集中。
24 @@FETCH_STATUS=-2 被提取的行不存在
25 @@FETCH_STATUS=100 处于最后行


原文地址:https://www.cnblogs.com/xiazh/p/1837593.html