ORACLE触发器的自治事务的注意事项

直接上代码:

Create OR replace Trigger TR_ROBXMX_CLDJBHHX
After INSERT OR UPDATE OR DELETE 
ON ROBXMX1 --要监测的表
FOR EACH ROW
DECLARE 
Pragma Autonomous_Transaction;
Begin
    IF  INSERTING THEN
    Update robxmx1 set robxmx_bh='' where robxmx_nm=:new.robxmx_nm;
    ELSIF UPDATING THEN
    SELECT * FROM ROBXMX1 where roxbxmx_nm=:NEW.ROBXMX_NM;
    ELSIF DELETING THEN
    DELETE  TEMPTABLE Where TEMP_ID=:OLD.ROBXMX.ID;
    END IF;
    commit;
END;

上面代码需要注意的是:

1,因为对于要监测的表进行操作,所以添加自治事务

2.如果同时对表进行操作修改的操作,可能会出现将表锁定的状态。

上一篇:yarn日常维护之nm健康状态为false的原因查找


下一篇:【论文阅读】SkeletonNet Mining Deep Part Features for 3-D Action Recognition