RDB$TRIGGER_NAME |
CHAR(31) |
Trigger name |
RDB$RELATION_NAME |
CHAR(31) |
The name of the table or view the trigger applies
to. NULL if the trigger is applicable to a database event (“database
trigger”)
|
RDB$TRIGGER_SEQUENCE |
SMALLINT |
Position of this trigger in the sequence. Zero usually means
that no sequence position is specified
|
RDB$TRIGGER_TYPE |
SMALLINT |
The event the trigger fires on:
1 - before insert |
2 - after insert |
3 - before update |
4 - after update |
5 - before delete |
6 - after delete |
17 - before insert or update |
18 - after insert or update |
25 - before insert or delete |
26 - after insert or delete |
27 - before update or delete |
28 - after update or delete |
113 - before insert or update or delete |
114 - after insert or update or delete |
8192 - on connect |
8193 - on disconnect |
8194 - on transaction start |
8195 - on transaction commit |
8196 - on transaction rollback |
|
Identification of the exact RDB$TRIGGER_TYPE code is a little
more complicated, since it is a bitmap, calculated according to which phase and events
are covered and the order in which they are defined. For the curious, the calculation is
explained in this blog by Mark
Rotteveel.
|
|
|
RDB$TRIGGER_SOURCE |
BLOB TEXT |
Stores the source code of the trigger in PSQL |
RDB$TRIGGER_BLR |
BLOB BLR |
Stores the trigger in the binary language representation (BLR) |
RDB$DESCRIPTION |
BLOB TEXT |
Trigger comment text |
RDB$TRIGGER_INACTIVE |
SMALLINT |
Indicates whether the trigger is currently inactive (1) or active (0) |
RDB$SYSTEM_FLAG |
SMALLINT |
Flag: indicates whether the trigger is user-defined (value 0) or
system-defined (value 1 or greater)
|
RDB$FLAGS |
SMALLINT |
Internal use |
RDB$VALID_BLR |
SMALLINT |
Indicates whether the text of the trigger remains valid after
the latest modification by the the ALTER TRIGGER statement
|
RDB$DEBUG_INFO |
BLOB |
Contains debugging information about variables used in the trigger |