1.返回值
游标取到值 则@@FETCH_STATUS=0
1)比如select 数据集只有10行,强制读取第11行,则会返回-1
2)其他异常
则@@FETCH_STATUS=-1
当前游标读取的值已经被其他进程删除了
@@FETCH_STATUS=-2
2.FETCH循环:
第一种:
while (@@FETCH_STATUS <> -1)
begin
if (@@FETCH_STATUS = -2)
begin
FETCH NEXT FROM balance_cursor INTO @TillID, @TillStatus
continue--A
end
……
end
第二种:
while (@@FETCH_STATUS = 0)
begin
……
end
我一直在想,如果A不进行特殊的错误记录,应该采用方法2更简单
@@FETCH_STATUS 返回值
最新推荐文章于 2019-11-09 03:53:45 发布
本文介绍了SQL中的@@FETCH_STATUS返回值及其在游标操作中的应用。当游标成功获取一行数据时,@@FETCH_STATUS返回0;尝试获取超出数据集范围的行时,返回-1;当前行被其他进程删除时,返回-2。同时,展示了两种FETCH循环的处理方式,建议在没有特殊错误处理需求时,使用检查@@FETCH_STATUS是否为0的循环方式,以简化代码。
2651

被折叠的 条评论
为什么被折叠?



