例如:程序要将aa表的bb字段的某一行的值更新为1,触发器将1改为2,将bb字段的值更新为2
如果程序要更新为3,则不触发
CREATE OR REPLACE TRIGGER aa_trigger
BEFORE UPDATE OF bb
ON aa
REFERENCING NEW AS new_val OLD AS old_val --在这里设置名字,然后可引用新值,旧值.如果不指定默认值为new ,old.可以通过:new或:old去引用
FOR EACH ROW
DECLARE
BEGIN
if new_val = 1 then
update table aa set bb = 2 where ...;
END;
CREATE OR REPLACE TRIGGER update_aa_trigger
AFTER UPDATE ON aa
REFERENCING NEW AS NEW OLD AS OLD
FOR EACH ROW
WHEN( NEW.bb = 2)
DECLARE
BEGIN
UPDATE aa set bb = '2' WHERE id = 'id';
END;