博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【入门】使用游标做更新时的注意事项
阅读量:7154 次
发布时间:2019-06-29

本文共 454 字,大约阅读时间需要 1 分钟。

  hot3.png

declare
cursor c_str(p_storecode number) is
    select a.storname from cbm_str a
    where a.storecode = p_storecode for update;
begin
for r_str in c_str(5000) loop
    update cbm_str a
        set a.storname ='中国四川分店'
        where current of c_str;
        

        --commit;--这里决定不能有commit命令,否则会出现【提取违反顺序】的oracle错误。

        --在这里commit的话,表锁定就释放了,就不能更新后面的数据了。current of 必须和fou update 配对使用。

    end loop;

    --commit; --但是可以放在这里,就不会发生错误。应为所有行都更新完了,,吧锁释放掉已经无所谓了。

end;
/

转载于:https://my.oschina.net/shiwb/blog/124234

你可能感兴趣的文章
C#中的反射 Reflection
查看>>
如何制作高转化率的营销页面
查看>>
Math
查看>>
Daily Scrum 10.30
查看>>
同为程序员 为什么我的工资最低
查看>>
02 面向对象之:类空间问题以及类之间的关系
查看>>
Cheat—— 给Linux初学者和管理员一个终极命令行"备忘单"
查看>>
C/S模式下的打印方法
查看>>
windows10下基于vs2015的 caffe安装教程及python接口实现
查看>>
Django2.0模型基础——(一)
查看>>
20145234黄斐《Java程序设计》第九周学习总结
查看>>
poj 1274(二分图最大匹配)
查看>>
ASP.NET MVC分页组件MvcPager 2.0版发布暨网站全新改版
查看>>
document.all用法
查看>>
编写可维护的css
查看>>
EJB
查看>>
[C#绘图]在半透明矩形上绘制字符串
查看>>
泛型/泛型约束/协变逆变
查看>>
linux Cron 定时任务(centos 7.2 测试可用)
查看>>
Block Change Tracking (块改变跟踪)
查看>>