CREATE OR REPLACE TRIGGER trgiName
AFTER INSERT  OR UPDATE
  OF tableA.F2
ON tableA
REFERENCING NEW AS NEW OLD AS OLD
FOR EACH ROW
begin
  IF INSERTING THEN
    update tableB
    set F2=:NEW.F2
    where F1= :NEW.F1;
  ELSE
    update tableB
    set F2=:NEW.F2
    where F1= :OLD.F1;
end;
/

解决方案 »

  1.   

    我也试过将Before改为After,也不行,总是提示“出现;符号在需要下列情况之一时:if”
      

  2.   

    CREATE OR REPLACE TRIGGER trgiName
    BEFORE INSERT  OR UPDATE
      OF tableA.F2
    ON tableA
    FOR EACH ROW
    begin
      IF INSERTING THEN
      update tableB
        set tableB.F2=:NEW.F2
        where tableB.F1= :NEW.F1;
      ELSE
            update tableB
        set tableB.F2=:NEW.F2
        where tableB.F1= :OLD.F1;
      end if;
    end;
    /