【发布时间】:2012-03-12 19:27:13
【问题描述】:
我有一个带有(太多)触发器的数据库。它们可以级联。
我有一个查询,看起来很简单,但我绝对记不住所有触发器的效果。所以,这个简单的查询实际上可能根本不简单,并且没有达到我的预期。
有没有办法知道在运行查询之前触发了哪些触发器,或者在运行查询之后触发了哪些触发器(尚未提交)?
我对@987654321@ 之类的查询并不真正感兴趣,因为我已经知道它们,而且它并没有告诉我在我的查询中是否会满足触发器的触发条件。
谢谢
【问题讨论】:
-
我不知道模拟触发器执行的方法,但是如果您能够更改触发器主体,您可能想要添加一些日志语句,例如插入带有名称和时间戳的专用表。顺便说一句:如果你使用的是 11g,你应该看看复合触发器......
-
@Toby,添加日志语句是一个想法……但这意味着将它们全部重写。将研究复合触发器,但我们仍有客户使用 9i。