游标中@@fetch_status的含义
@@fetch_status是MSSQL的一个全局变量,【返回类型integer】,其值有以下三种,分别表示三种不同含义:
0 FETCH 语句成功
-1 FETCH 语句失败或此行不在结果集中
-2 被提取的行不存在
@@fetch_status值的改变是通过fetch next from实现的
“FETCH NEXT FROM Cursor”
例子:
1 DECLARE myCursor CURSOR FOR SELECT aa--字段名 FROM table--表名 2 WHERE DeleteFlag=0 --声明游标 3 OPEN myCursor --打开游标 4 FETCH NEXT FROM myCursor INTO @bar --循环 5 WHILE @@FETCH_STATUS = 0 6 BEGIN 7 INSERT INTO @tempBarcode(Barcode) SELECT * FROM dbo.Fun_GetBarcode(@bar) 8 FETCH NEXT FROM myCursor INTO @bar --下次循环(很重要) 9 END 10 CLOSE myCursor --关闭游标 11 DEALLOCATE myCursor --释放游标