3_11_MSSQL课程_ 游标
1 use [LJK_SQLServerDB] 2 select * from [dbo].[User_Info] 3 --第一游标,让游标指向Sql查询结果 4 declare demoCursor Cursor for 5 select User_Name,User_ID,User_Age,User_Pwd from User_Info 6 ---打开游标 7 open demoCursor 8 --书写Sql脚本 9 declare @UserName nvarchar(32) 10 declare @UserId int 11 declare @UserAge int 12 declare @UserPwd int 13 --把游标指向的数据取出来,把数据放到后面的三个变量中 14 fetch next from demoCursor into @UserName,@UserId,@UserAge,@UserPwd 15 16 17 --@@全局变量 18 --@@fetch_status是一个全局的变量。(全局的变量都用@@开头,变量都由SqlServer管理和维护,开发人员不能修改) 19 --0 fetch 语句成功 20 -- -1 fetch 语句失败或行不在结果集中 21 -- -2 提取的行不存在 22 while(@@FETCH_STATUS= 0) 23 begin 24 print '--------------------------' 25 print @UserName 26 print @UserId 27 update User_Info set User_Name='LJK_'+@UserName where User_Id=@UserId 28 print @UserAge 29 print @UserPwd 30 print '-------------------------' 31 fetch next from demoCursor into @UserName,@UserId,@UserAge,@UserPwd 32 end 33 34 close demoCursor --关闭游标 35 deallocate demoCursor --释放游标,释放后就不能再open