before可以对即将插入、修改、删除的记录进行修改!
after 无法完成对即将插入、修改、删除的记录的修改!

解决方案 »

  1.   

    我的做法是这样的:---------------
    当一个表 x 的内容变化时,将其变化的内容添加到另一个表中
    ---这个用after
    当一个表 x 的内容变化时,这个表的Y也变化
    ---这个用before
      

  2.   

    “before可以对即将插入、修改、删除的记录进行修改!
      after 无法完成对即将插入、修改、删除的记录的修改!”
    能否举例说明。理解不了。
      

  3.   

    1  create or replace trigger u_insert
      2    before insert on u
      3    for each row
      4  declare
      5     str varchar2(20);
      6  begin
      7    str:='aaa';
      8    :new.u1:=str;
      9* end u_insert;
    SQL> /Trigger created.SQL> select * from u;U1         U2
    ---------- ----------
    a1         b1
    a1         b1
    a2         b1SQL> insert into u values ('bbb','bbb');1 row created.SQL> commit;SQL> select * from u;U1         U2
    ---------- ----------
    a1         b1
    a1         b1
    a2         b1
    aaa        bbb
    这样的操作 before 可以 但是after 不可以
      

  4.   

    像楼主这种情况,我用的是before