ORA-04091:表发生了变化触发器/函数不能读
create or replace trigger "TRIG_ONMODY_T_SUPERVISION_MX"
after update on t_supervision_mx
referencing old as o
for each row
declare
sxfl VARCHAR2(64);
PRAGMA AUTONOMOUS_TRANSACTION;
begin
if :o.mxtype='task' then
select ab.status
into sxfl
from t_supervision_mx ab
where ab.taskid = :o.taskid;
if sxfl='申请撤销' then
update t_supervisiontask a set a.taskstatus= 15 where a.id = :o.taskid;
update t_supervisiontaskfeetback b set b.feetbackcontent= :o.faNKUIQINGKUANG where b.taskid= :o.taskid;
end if;
if sxfl='申请完成' then
update t_supervisiontask a set a.taskstatus= 10 where a.id = :o.taskid;
update t_supervisiontaskfeetback b set b.feetbackcontent= :o.faNKUIQINGKUANG where b.taskid= :o.taskid;
end if;
end if;
commit;
end TRIG_ONMODY_T_SUPERVISION_MX;
注意添加自治事务,否则将会出现
ORA-04091:表发生了变化触发器/函数不能读
的错误