# SYSTRIGGERS system table

The SYSTRIGGERS table describes the database's triggers.

The following table shows the contents of the SYSTRIGGERS system table.

Table 1. SYSTRIGGERS system table
Column Name | Type | Length | Nullable | Contents
--- | --- | --- | --- | ---
TRIGGERID | CHAR | 36 | false | Unique identifier for the trigger
TRIGGERNAME | VARCHAR | 128 | false | Name of the trigger
SCHEMAID | CHAR | 36 | false | ID of the trigger's schema (join with SYSSCHEMAS.SCHEMAID)
CREATIONTIMESTAMP | TIMESTAMP | 29 | false | Time the trigger was created, for internal use to ensure correct execution order of triggers.
EVENT | CHAR | 1 | false | 'U' for update, 'D' for delete, 'I' for insert
FIRINGTIME | CHAR | 1 | false | 'B' for before, 'A' for after
TYPE | CHAR | 1 | false | 'R' for row, 'S' for statement
STATE | CHAR | 1 | false | 'E' for enabled, 'D' for disabled
TABLEID | CHAR | 36 | false | ID of the table on which the trigger is defined
WHENSTMTID | CHAR | 36 | true | ID of the trigger's WHEN clause, if one is present
ACTIONSTMTID | CHAR | 36 | true | ID of the stored prepared statement for the triggeredSQLStatement (join with SYSSTATEMENTS.STMTID)
REFERENCEDCOLUMNS | org.apache.derby. catalog. ReferencedColumns This class is not part of the public API. | 2,147,483,647 | true | Descriptor of the columns to be updated, if this trigger is an update trigger (that is, if the EVENT column contains 'U')
TRIGGERDEFINITION | LONG VARCHAR | 32,700 | true | Text of the action SQL statement
REFERENCINGOLD | BOOLEAN | 1 | true | Whether or not the OLDREFERENCINGNAME, if non-null, refers to the OLD row or table
REFERENCINGNEW | BOOLEAN | 1 | true | Whether or not the NEWREFERENCINGNAME, if non-null, refers to the NEW row or table
OLDREFERENCINGNAME | VARCHAR | 128 | true | Pseudoname as set using the REFERENCING OLD AS clause
NEWREFERENCINGNAME | VARCHAR | 128 | true | Pseudoname as set using the REFERENCING NEW AS clause
WHENCLAUSETEXT | LONG VARCHAR | 32,700 | true | Text of the trigger's WHEN clause, if one is present

Any SQL text that is part of a triggeredSQLStatement is compiled and stored in the SYSSTATEMENTS table. ACTIONSTMTID and WHENSTMTID are foreign keys that reference SYSSTATEMENTS.STMTID. The statements for a trigger are always in the same schema as the trigger.

Parent topic: Derby system tables