学习最简单的方法是做几个例子:
--向一个表插入数据时,并向另一个表插入查询数据
create or replace trigger trg_user_class
after insert on USERS
for each row
begin
insert into user_class(uname,uage,cname)
select :NEW.name,:NEW.age,cname from CLASS where cid=:NEW.CLASSID;
end;
/
注意::NEW是insert等操作后的虚拟新表包含当前操作行的新数据,可以直接使用,对应:OLD为操作前的表
--修改一个表同时修改另一个表
create or replace trigger trg_user_class_update
after update on USERS
for each row
begin
update user_class set uname=:NEW.name,uage=:NEW.age where uname=:OLD.name;
end;
/
--删除一个表的数据时同时删除另一个表
create or replace trigger trg_user_class_delete
after delete on USERS
for each row
begin
delete from user_class where uname=:old.name;
end;
/