Previous Topic: CREATE TABLENext Topic: CREATE VIEW


CREATE TRIGGER/RULE

►►─ CREATE ─┬─ TRIGGER ─┬─ trig-name ─┬─ BEFORE ─┬────────────────────────────►
            └─ RULE ────┘             └─ AFTER ──┘

 ►─ trig-event ─┬─ ON ───┬─ table-name ─┬───────────────────┬─ trig-action ───►◄
                ├─ OF ───┤              └─ trig-references ─┘
                ├─ FROM ─┤
                └─ INTO ─┘

Trig-event

   ┌─ , ───────────────────────────────────┐
►►─▼─┬─ INSERT ──────────────────────────┬─┴──────────────────────────────────►◄
     ├─ UPDATE ─┬──────────────────────┬─┤
     │          └┬────┬─ (column-list) ┘ │
     │           └ OF ┘                  │
     └─ DELETE ──────────────────────────┘

Trig-references

►►─ REFERENCING ─┬─ old-row ─────────┬────────────────────────────────────────►◄
                 ├─ new-row ─────────┤
                 ├─ old-row,new-row ─┤
                 └─ new-row,old-row ─┘

Old-row

►►─ OLD ─┬───────┬─ AS ─ correlation-name ────────────────────────────────────►◄
         └─ ROW ─┘

New-row

►►─ NEW ─┬───────┬─ AS ─ correlation-name ────────────────────────────────────►◄
         └─ ROW ─┘

Trig-action

►►─┬────────────────┬─┬───────────────┬─┬─ call-procedure ────┬───────────────►◄
   └─ FOR EACH ROW ─┘ └─ when-clause ─┘ └─ execute-procedure ─┘

When-clause

►►─┬─ WHEN ──┬─ boolean-expression ───────────────────────────────────────────►◄
   └─ WHERE ─┘