CREATE OR REPLACE TRIGGER tr_trigger_test1
AFTER insert
ON trigger_test1
FOR EACH ROW
declare
begin
insert into trigger_test2(id,pubtime,string,fid)
values (trigger_test_q.nextval,sysdate,'asdf',:OLD.id);
end;如果trigger_test1表添加新纪录的时候,就触发tr_trigger_test1,之后将trigger_test1表的ID字段,写入trigger_test2表。
但是trigger_test2表的每个fid字段都是没有值的。SQL> select id,pubtime,fid from trigger_test2;
ID PUBTIME FID
-- ----------- ---
2 2008-5-23 1
4 2008-5-23 1
6 2008-5-23 1
8 2008-5-23 1
AFTER insert
ON trigger_test1
FOR EACH ROW
declare
begin
insert into trigger_test2(id,pubtime,string,fid)
values (trigger_test_q.nextval,sysdate,'asdf',:OLD.id);
end;如果trigger_test1表添加新纪录的时候,就触发tr_trigger_test1,之后将trigger_test1表的ID字段,写入trigger_test2表。
但是trigger_test2表的每个fid字段都是没有值的。SQL> select id,pubtime,fid from trigger_test2;
ID PUBTIME FID
-- ----------- ---
2 2008-5-23 1
4 2008-5-23 1
6 2008-5-23 1
8 2008-5-23 1
UPDATE触发器才有OLD.id和NEW.id
AFTER insert
ON trigger_test1
FOR EACH ROW
declare
begin
insert into trigger_test2(id,pubtime,string,fid)
values (trigger_test_q.nextval,sysdate,'asdf',:NEW.id);
end;