所以我有表foo
,我想在触发foo
时触发其他t_foo
行:
CREATE OR REPLACE TRIGGER "t_foo" AFTER INSERT OR DELETE OR UPDATE ON foo
/*delete some other records from foo that are not :NEW.* or :OLD.* \*
如果不使ORA-04091:
表名变异,我怎么能这样做,触发器/函数可能看不到它。这甚至可能吗?
答案 0 :(得分:8)
为什么不在存储过程中执行此操作,您可以在事务中包装插入和删除操作,并且可以清楚地记录此副作用行为?
答案 1 :(得分:6)
答案 2 :(得分:2)
这基本上意味着您在表中具有相互依赖的行,可能是具有从列到主键的自引用的分层结构。您是否考虑过ON DELETE CASCADE
?