2016-04-15 3 views
1

Ich habe eine Verwirrung über maximale Anzahl von verschiedenen Arten von Triggern, die wir auf eine einzige Tabelle in Oracle DB haben können.Wie viele Trigger können wir auf einer einzigen Tabelle in Oracle DB haben

+0

Es gibt keine Begrenzung. Sie können so viele Trigger für dasselbe Ereignis in einer Tabelle haben. Aber wenn Sie daran interessiert sind, ein solches System zu entwickeln, bei dem Sie eine praktische Anzahl von Triggern auf einem einzigen Tisch erreichen, dann wird es zweifellos ein absolut dummes System sein. –

+0

Aber einige im Internet sagen, wir können 12 keine gleichen Auslöser haben. –

+0

Das ist einfach falsch. Oracle hält Sie nicht davon ab, mehrere Trigger für dasselbe Ereignis zu erstellen. Probieren Sie es einfach und sehen Sie. Ab 11g werden auch zusammengesetzte Trigger unterstützt. Also, 12 ist einfach falsch. Sie können so viele haben. –

Antwort

1

Haben Sie irgendwelche Probleme aufgrund eines Limits?

Sie können Auslöser dieser Zeitpunkte:

  • VOR Anweisung
  • löst
  • VOR Reihe
  • löst
  • AFTER Reihe
  • löst
  • NACH Anweisung löst

Falls Sie haben mehr als ein Trigger zu einem Zeitpunkt die Reihenfolge der Ausführung ist unbestimmt, so sollte es sehr ungewöhnlich sein viele Trigger für den gleichen Zeitpunkt haben.

Oracle documentation sagt:

Sie nicht, in welcher Reihenfolge mehrreihige Feuer auslöst steuern kann.

Wenn zwei oder mehr Trigger mit dem gleichen Timing Punkt definiert werden, und die Reihenfolge, in der sie Feuer ist wichtig, dann können Sie die Zündfolge die FOLLOWS Klausel steuern.

Verwandte Themen