我们可以使用触发器进行复杂操作吗?
答案 0 :(得分:0)
是的,32kb
的触发器有限制,但您可以调用其他代码,复杂的操作不应该是个问题
<强> Oracle Docs 强>
触发器的大小不能超过32K。
如果触发器的逻辑需要超过60行PL / SQL源代码,则将大部分源代码放在存储的子程序中,并从触发器调用子程序。有关触发器调用的子程序的信息,请参阅"Subprograms Invoked by Triggers"。
来自此 book
答案 1 :(得分:0)
触发器不适合“复杂操作”。实际上,触发器非常适合的用例非常少。关于在StackOverflow上使用触发器的大多数问题都有用例,这些用例可以在存储过程或其他一些机制中更好地实现。
触发器对复杂操作不利,因为它们很难被发现。它们也不能很好地扩展。
如果你接近Trigger机构的32K限制,你真的应该重新考虑你的方法。实际上,如果您拥有的代码行数多于拥有表中的属性,那么您可能应该重新考虑您的方法。