The TRIGGERS table provides
information about triggers. To see information about a table's
triggers, you must have the TRIGGER
privilege for the table.
The TRIGGERS table has these columns:
TRIGGER_CATALOGThe name of the catalog to which the trigger belongs. This value is always
def.TRIGGER_SCHEMAThe name of the schema (database) to which the trigger belongs.
TRIGGER_NAMEThe name of the trigger.
EVENT_MANIPULATIONThe trigger event. This is the type of operation on the associated table for which the trigger activates. The value is
INSERT(a row was inserted),DELETE(a row was deleted), orUPDATE(a row was modified).EVENT_OBJECT_CATALOG,EVENT_OBJECT_SCHEMA, andEVENT_OBJECT_TABLEAs noted in Section 27.4, “Using Triggers”, every trigger is associated with exactly one table. These columns indicate the catalog and schema (database) in which this table occurs, and the table name, respectively. The
EVENT_OBJECT_CATALOGvalue is alwaysdef.ACTION_ORDERThe ordinal position of the trigger's action within the list of triggers on the same table with the same
EVENT_MANIPULATIONandACTION_TIMINGvalues.ACTION_CONDITIONThis value is always
NULL.ACTION_STATEMENTThe trigger body; that is, the statement executed when the trigger activates. This text uses UTF-8 encoding.
ACTION_ORIENTATIONThis value is always
ROW.ACTION_TIMINGWhether the trigger activates before or after the triggering event. The value is
BEFOREorAFTER.ACTION_REFERENCE_OLD_TABLEThis value is always
NULL.ACTION_REFERENCE_NEW_TABLEThis value is always
NULL.ACTION_REFERENCE_OLD_ROWandACTION_REFERENCE_NEW_ROWThe old and new column identifiers, respectively. The
ACTION_REFERENCE_OLD_ROWvalue is alwaysOLDand theACTION_REFERENCE_NEW_ROWvalue is alwaysNEW.CREATEDThe date and time when the trigger was created. This is a
TIMESTAMP(2)value (with a fractional part in hundredths of seconds) for triggers.SQL_MODEThe SQL mode in effect when the trigger was created, and under which the trigger executes. For the permitted values, see Section 7.1.11, “Server SQL Modes”.
DEFINERThe account named in the
DEFINERclause (often the user who created the trigger), in'format.user_name'@'host_name'CHARACTER_SET_CLIENTThe session value of the
character_set_clientsystem variable when the trigger was created.COLLATION_CONNECTIONThe session value of the
collation_connectionsystem variable when the trigger was created.DATABASE_COLLATIONThe collation of the database with which the trigger is associated.
Example
The following example uses the ins_sum trigger
defined in Section 27.4, “Using Triggers”:
Press CTRL+C to copymysql> SELECT * FROM INFORMATION_SCHEMA.TRIGGERS WHERE TRIGGER_SCHEMA='test' AND TRIGGER_NAME='ins_sum'\G *************************** 1. row *************************** TRIGGER_CATALOG: def TRIGGER_SCHEMA: test TRIGGER_NAME: ins_sum EVENT_MANIPULATION: INSERT EVENT_OBJECT_CATALOG: def EVENT_OBJECT_SCHEMA: test EVENT_OBJECT_TABLE: account ACTION_ORDER: 1 ACTION_CONDITION: NULL ACTION_STATEMENT: SET @sum = @sum + NEW.amount ACTION_ORIENTATION: ROW ACTION_TIMING: BEFORE ACTION_REFERENCE_OLD_TABLE: NULL ACTION_REFERENCE_NEW_TABLE: NULL ACTION_REFERENCE_OLD_ROW: OLD ACTION_REFERENCE_NEW_ROW: NEW CREATED: 2018-08-08 10:10:12.61 SQL_MODE: ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES, NO_ZERO_IN_DATE,NO_ZERO_DATE, ERROR_FOR_DIVISION_BY_ZERO, NO_ENGINE_SUBSTITUTION DEFINER: me@localhost CHARACTER_SET_CLIENT: utf8mb4 COLLATION_CONNECTION: utf8mb4_0900_ai_ci DATABASE_COLLATION: utf8mb4_0900_ai_ci
Trigger information is also available from the
SHOW TRIGGERS statement. See
Section 15.7.7.41, “SHOW TRIGGERS Statement”.