PLSQL并发控制

EBS开发中更新表记录有好几中形式,FORM中更新,PLSQL中更新,其中都不可缺少并发处理

如果是在FORM中可以加入on-lock等,那么在PLSQL呢?

根据需求我们可以锁表也可以锁定特定的记录

可以先声明一个游标:


    CURSOR cur_gms(p_m_id NUMBER) IS
      SELECT *
        FROM cux_gl_mon_state_all t
       WHERE t.mon_state_id = p_m_id
         FOR UPDATE OF t.mon_state_id NOWAIT;
然后再更新记录

FOR u_data IN cur_gms(l_m_id) LOOP
      UPDATE cux_gl_mon_state_all t
         SET t.transaction_type = p_transaction_type
       WHERE t.mon_state_id = u_data.mon_state_id;
    END LOOP;



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值