24.3.29 Таблица INFORMATION_SCHEMA TRIGGERS
Таблица TRIGGERS предоставляет информацию о триггерах. Для просмотра информации о триггерах таблицы необходимо иметь привилегию TRIGGER для этой таблицы.
Таблица TRIGGERS содержит следующие столбцы:
-
TRIGGER_CATALOGИмя каталога, к которому принадлежит триггер. Это значение всегда равно
def. -
TRIGGER_SCHEMAИмя схемы (базы данных), к которой принадлежит триггер.
-
TRIGGER_NAMEИмя триггера.
-
EVENT_MANIPULATIONСобытие триггера. Это тип операции над связанной таблицей, при которой активируется триггер. Значение равно
INSERT(строка была вставлена),DELETE(строка была удалена) илиUPDATE(строка была изменена). -
EVENT_OBJECT_CATALOG,EVENT_OBJECT_SCHEMAиEVENT_OBJECT_TABLEКак отмечено в разделе 23.3, «Использование триггеров», каждый триггер связан ровно с одной таблицей. Эти столбцы указывают каталог и схему (базу данных), в которой находится эта таблица, а также имя таблицы соответственно. Значение
EVENT_OBJECT_CATALOGвсегда равноdef. -
ACTION_ORDERПорядковый номер действия триггера в списке триггеров в той же таблице с теми же значениями
EVENT_MANIPULATIONиACTION_TIMING. -
ACTION_CONDITIONЭто значение всегда равно
NULL. -
ACTION_STATEMENTТело триггера; т.е., оператор, выполняемый при активации триггера. Этот текст использует кодировку UTF-8.
-
ACTION_ORIENTATIONЭто значение всегда равно
ROW. -
ACTION_TIMINGАктивируется ли триггер до или после запускающего события. Значение равно
BEFOREилиAFTER. -
ACTION_REFERENCE_OLD_TABLEЭто значение всегда равно
NULL. -
ACTION_REFERENCE_NEW_TABLEЭто значение всегда равно
NULL. -
ACTION_REFERENCE_OLD_ROWиACTION_REFERENCE_NEW_ROWИдентификаторы старого и нового столбца соответственно. Значение
ACTION_REFERENCE_OLD_ROWвсегда равноOLD, а значениеACTION_REFERENCE_NEW_ROWвсегда равноNEW. -
CREATEDДата и время создания триггера. Это значение
TIMESTAMP(2)(с дробной частью в сотых долях секунды) для триггеров, созданных в MySQL 5.7.2 или более поздних версиях,NULLдля триггеров, созданных до 5.7.2. -
SQL_MODEРежим SQL, действующий при создании триггера и при выполнении триггера. Допустимые значения см. в разделе 5.1.10, «Режим SQL сервера».
-
DEFINERПользователь, указанный в предложении
DEFINER(часто пользователь, создавший триггер), в формате'.user_name'@'host_name' -
CHARACTER_SET_CLIENTЗначение сессии системной переменной
character_set_clientпри создании триггера. -
COLLATION_CONNECTIONЗначение сессии системной переменной
collation_connectionпри создании триггера. -
DATABASE_COLLATIONКоллирование базы данных, с которой связан триггер.
Пример
В следующем примере используется триггер ins_sum, определенный в разделе 23.3, «Использование триггеров»:
mysql> 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_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
DEFINER: me@localhost
CHARACTER_SET_CLIENT: utf8
COLLATION_CONNECTION: utf8_general_ci
DATABASE_COLLATION: latin1_swedish_ci
Информация о триггерах также доступна с помощью оператора SHOW TRIGGERS. См. раздел 13.7.5.38, «Оператор SHOW TRIGGERS».
© 2025 Oracle
Licensed under the GPLv2 License.