Die CREATE SYSTEM TRIGGER-Anweisung (create_system_trigger_statement) definiert einen Trigger für den Restart.
<create_system_trigger_statement> ::=
CREATE SYSTEM TRIGGER [<schema_name>.]<trigger_name> AFTER RESTART EXECUTE (<routine>)
Ein System-Trigger ist eine spezielle Datenbankprozedur, die im Verlauf eines Restarts implizit ausgeführt wird. Die Ausführung erfolgt zu einem Zeitpunkt, zu dem die Datenbankinstanz zwar bereits vollständig gestartet ist, jedoch noch keine Verbindungen an die Datenbankinstanz möglich sind.
Wenn vor dem Triggernamen kein Schema angegeben ist, wird implizit das aktuelle Schema angenommen. Der Trigger wird dem implizit ermittelten oder dem explizit angegebenen Schema zugeordnet.
Der aktuelle Benutzer muss ein Datenbankadministrator sein. Er wird Eigentümer des System-Triggers.
Der aktuelle Benutzer muss das CREATEIN-Privileg für dieses Schema besitzen. Der Triggername muss sich von den Namen aller bereits im Schema existierenden Triggernamen unterscheiden.
Wenn in der Datenbank mehr als ein System-Trigger definiert ist, so werden diese in einer beliebigen Reihenfolge ausgeführt.
Wird der Trigger durch STOP mit einer Fehlernummer ungleich Null beendet, scheitert der Restart. Ein Restart der Datenbankinstanz ist in diesem Fall nur möglich, indem die System-Trigger deaktiviert werden (Datenbankparameter ENABLE_SYSTEM_TRIGGERS).