1

可能重复:
合并多个 Oracle 触发器。任何性能影响?

问题: 哪一个是最好的(性能)?有多个触发器(大约 7-10 个)一个用于每种情况/目的,或者一个触发器可以处理所有情况(通过使用 if 等)。

详情: 我们正在开发基于Oracle 数据库的企业应用程序。我们有一个大约 3M 行的表,这是我们应用程序的基表。有几种情况我们只需要使用触发器来处理。恕我直言,为了维护,最好有多个触发器。但是性能呢?

4

2 回答 2

0

在我的情况下,一个触发器比多个小触发器快得多。为什么我不知道。

于 2012-11-01T06:29:18.147 回答
0

我看不出多个触发器的执行速度会显着提高。唯一的权衡是它们不会执行条件逻辑,从而节省了非常小的几分之一秒。

这确实是一个设计/维护问题...假设您想要检测代码以提供时序信息:如果您有一个触发器,那么您只需要进入一个程序,而对于多个触发器,您需要去多个地方检测代码。

另外,考虑使用 CASE 语句而不是 IF (它更清洁/更容易阅读/维护)。

于 2012-11-02T12:10:32.933 回答