sql server游标的使用

create PROCEDURE PK_Cursor
AS
--声明2个变量
declare @managementno nvarchar(20)  
declare @corpno nvarchar(20)  
 
--声明一个游标mycursor,select语句中参数的个数必须要和从游标取出的变量名相同
declare mycursor cursor for select M_ManagementNo,M_CorpNo from Management
 
--打开游标
open mycursor
 
--从游标里取出数据赋值到我们刚才声明的2个变量中
fetch next from mycursor into @managementno,@corpno
 
--判断游标的状态
--0 fetch语句成功    
---1 fetch语句失败或此行不在结果集中    
---2被提取的行不存在
while (@@fetch_status=0)
begin
 
--操作
  UPDATE dbo.BuildingMassages SET bm_corpno=@corpno WHERE BM_ManagementNO=@managementno
 
--用游标去取下一条记录
 fetch next from mycursor into @managementno,@corpno
end
--关闭游标
close mycursor

EXEC PK_Cursor

原文地址:https://www.cnblogs.com/MyBeN/p/1985923.html