zoukankan      html  css  js  c++  java
  • SQL游标 更新

    --定义游标
    DECLARE cur_getaddress CURSOR
    FOR
    SELECT
    new_a
    ,new_b
    ,new_c
    ,new_d

    FROM table
    WHERE (new_a is not null and new_b is not null and new_x IS NULL) or
    (new_c is not null and new_d is not null and new_y IS NULL )
    --打开游标
    OPEN cur_getaddress
    DECLARE @a VARCHAR(20) , @b VARCHAR(20),@c VARCHAR(20) , @d VARCHAR(20)
    FETCH NEXT FROM cur_getaddress INTO @a, @b ,@c,@d
    WHILE @@fetch_status = 0
    BEGIN

    SET NOCOUNT ON ;
    SET xact_abort ON
    --开始事务
    BEGIN TRANSACTION
    --延时150毫秒
    WAITFOR DELAY '00:00:00.150'
    --更新
    UPDATE table
    SET new_x = dbo.[GetAddressByLonLat](@a,@b)
    WHERE new_a=@a AND new_b = @b AND new_x IS NULL
    --延时150毫秒
    WAITFOR DELAY '00:00:00.150'
    UPDATE table
    SET new_y = dbo.[GetAddressByLonLat](@c,@d)
    WHERE new_c=@c AND new_d = @d AND new_y IS NULL
    COMMIT TRANSACTION
    --取下一个数据
    FETCH NEXT FROM cur_getaddress INTO  @a, @b ,@c,@d

    END
    CLOSE cur_getaddress ;
    DEALLOCATE cur_getaddress ;

  • 相关阅读:
    SQL Server 备份方案
    Azure 学习笔记
    SEO – 大杂烩
    Asp.net core 学习笔记之 Tag Helper
    读取注册表
    DOM学习历程-3
    inno setup给控制的那边加图标
    C++生成exe安装到别人那边无法使用缺少dll
    inno setup 最后
    inno setup
  • 原文地址:https://www.cnblogs.com/BinBinGo/p/5067487.html
Copyright © 2011-2022 走看看