游标

在游标逐行处理过程中,当需要处理的记录数较大,而且游标处理位于数据库事务内时,速度非常慢。

-- 声明变量
DECLARE @Id AS Int
-- 声明游标
DECLARE C_Id CURSOR FAST_FORWARD READ_ONLY FOR
    SELECT  b.Id FROM  dbo.Books b;
-- 打开游标
OPEN C_Id;

-- 取第一条记录
FETCH NEXT FROM C_Id INTO @Id;
WHILE @@FETCH_STATUS = 0
    BEGIN
    --逻辑处理
        SELECT  *  FROM  dbo.Books WHERE Id = @Id;
   -- 取下一条记录
        FETCH NEXT FROM C_Id INTO @Id;
    END;
-- 关闭游标
CLOSE C_Id;
-- 释放游标
DEALLOCATE C_Id;
View Code

相关文章:

  • 2021-12-12
  • 2022-12-23
  • 2022-01-03
  • 2022-12-23
  • 2022-03-01
  • 2022-12-23
猜你喜欢
  • 2021-09-20
  • 2021-07-28
  • 2022-12-23
  • 2022-12-23
  • 2021-12-22
  • 2022-12-23
  • 2021-09-20
相关资源
相似解决方案