游标循环跳过本次循环,循环下一行

≯℡__Kan透↙ 提交于 2019-11-29 00:19:49

DECLARE @Name NVARCHAR(50),@NRIC NVARCHAR(15),@PersonID INT
DECLARE CUR_Test CURSOR FOR
SELECT [Name],NRIC,PersonID FROM tblCtcPersonTest1
OPEN CUR_Test
FETCH NEXT FROM CUR_Test INTO @Name,@NRIC,@PersonID;
 WHILE @@FETCH_STATUS =0
    BEGIN
        IF CHARINDEX('*',@NRIC)>0
        BEGIN
            INSERT INTO tblCtcPersonTest([Name],[PersonID],NRIC)VALUES(@Name,@PersonID,@NRIC)
        END
        ELSE
        BEGIN
             UPDATE tblCtcPersonTest1 SET Remarks='cant insert' WHERE PersonID=@PersonID
             GOTO FORNEXT;
        END

        UPDATE tblCtcPersonTest1 SET Flag='success' WHERE PersonID=@PersonID
    FORNEXT:
    FETCH NEXT FROM CUR_Test INTO @Name,@NRIC,@PersonID;
    END
CLOSE CUR_Test;
DEALLOCATE CUR_Test

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!