SQLServer------遍历操作,游标的基础使用
以下代码
1 begin 2 declare @tempId int--当前被选中的订单id 3 declare order_cursor cursor 4 for (to.id FROM tb_order AS to WHERE 5 to.status =1)--声明并初始化一个游标,获取状态为1的订单表中的id的集合 6 --打开游标-- 7 open order_cursor 8 --开始循环游标变量-- 9 fetch next from order_cursor into @tempId --把当前游标变量值赋给的@tempId 10 while @@FETCH_STATUS = 0 --返回被 FETCH语句执行的最后游标的状态-- 11 begin 12 /* 13 此处执行具体的业务操作 14 */ 15 fetch next from order_cursor into @tempId --转到下一个游标,没有会无限循环 16 end 17 close order_cursor --关闭游标 18 deallocate order_cursor --释放游标 19 end
此处主要需要注意的地方就是不要忘记在结束循环语句之前带上fetch next from 这条命令否则就会出现死循环
从理论中来,到实践中去