IF OBJECT_ID('Proc_SP_Cursor_Test','P') IS NOT NULL DROP PROC Proc_SP_Cursor_Test GO -- ============================================= -- Author:BruceYang -- Create date: 2019-05-23 -- Desc: 游标使用方法 -- ============================================= Create proc Proc_SP_Cursor_Test(@TestName NVARCHAR(100)) as --申明一个游标 DECLARE MyCursor CURSOR FOR SELECT 1 AS Contractrecalculateid,2 AS Contractid --打开一个游标 OPEN MyCursor
--循环一个游标 DECLARE @Contractrecalculateid INT,@Contractid INT FETCH NEXT FROM MyCursor INTO @Contractrecalculateid,@Contractid WHILE @@FETCH_STATUS =0 --//如果上一次操作成功则继续循环 BEGIN --脚本需要执行修改处 PRINT '测试'+CAST(@Contractid AS NVARCHAR(100)) FETCH NEXT FROM MyCursor INTO @Contractrecalculateid,@Contractid END
--关闭游标 CLOSE MyCursor --释放资源 DEALLOCATE MyCursor
/* 测试 exec Proc_SP_Cursor_Test '测试' */ GO