oracle 触发器更新基表不同记录所产生的问题

来源:互联网 发布:淘宝店铺怎么起名字 编辑:程序博客网 时间:2024/05/16 14:59

因为不想通过后台代码实现,所以想通过触发器来进行操作更新,但是因为触发器更新基表会产生死锁现象,所以参考网上用 全局变量来解决该问题,但是在我的行级触发器中一直报错,不明原因。代码如下:


create or replace package pkg_proinfo_update

as G_process in varchar2;G_id in number;
end ;


CREATE OR REPLACE TRIGGER proparent_process_prochild
before update OF process
ON proinfo 
FOR EACH ROW
when (old.proclass='总体项目')
BEGIN
  
 FXYDATA.V_ROW:=:new.process;
  FXYDATA.V_GUID:=:new.guId;


END;




create or replace trigger pkg_proproc_update
after update on proinfo
begin
UPDATE proinfo p SET p.parentstate =pkg_proinfo_update.G_process
 WHERE p.parentguid =  pkg_proinfo_update.G_id;
 end;
0 0