Spec-Zone .ru
спецификации, руководства, описания, API
|
TRIGGERS
таблица
предоставляет информацию о триггерах. Можно видеть результаты только для баз данных и таблиц, для которых Вы
имеете TRIGGER
полномочие.
INFORMATION_SCHEMA Имя |
SHOW Имя
|
Комментарии |
---|---|---|
TRIGGER_CATALOG |
def |
|
TRIGGER_SCHEMA |
||
TRIGGER_NAME |
Trigger |
|
EVENT_MANIPULATION |
Event |
|
EVENT_OBJECT_CATALOG |
def |
|
EVENT_OBJECT_SCHEMA |
||
EVENT_OBJECT_TABLE |
Table |
|
ACTION_ORDER |
0 |
|
ACTION_CONDITION |
NULL |
|
ACTION_STATEMENT |
Statement |
|
ACTION_ORIENTATION |
ROW |
|
ACTION_TIMING |
Timing |
|
ACTION_REFERENCE_OLD_TABLE |
NULL |
|
ACTION_REFERENCE_NEW_TABLE |
NULL |
|
ACTION_REFERENCE_OLD_ROW |
OLD |
|
ACTION_REFERENCE_NEW_ROW |
NEW |
|
CREATED |
NULL (0 ) |
|
SQL_MODE |
Расширение MySQL | |
DEFINER |
Расширение MySQL | |
CHARACTER_SET_CLIENT |
Расширение MySQL | |
COLLATION_CONNECTION |
Расширение MySQL | |
DATABASE_COLLATION |
Расширение MySQL |
Примечания:
TRIGGER_SCHEMA
и TRIGGER_NAME
: Имя базы данных, в которой триггер происходит и триггерное имя,
соответственно.
EVENT_MANIPULATION
: Тип работы на связанной таблице,
для которой активируется триггер. Одно из значений 'INSERT'
(строка была
вставлена), 'DELETE'
(строка была удалена), или 'UPDATE'
(строка была изменена).
EVENT_OBJECT_SCHEMA
и EVENT_OBJECT_TABLE
:
Как отмечено в Разделе
18.3, "Используя Триггеры", каждый триггер связывается точно с одной таблицей. Эти
столбцы содержат базу данных, в которой эта таблица происходит, и имя таблицы.
ACTION_ORDER
: Порядковая позиция действия триггера в
пределах списка всех подобных триггеров на той же самой таблице. В настоящий момент это значение всегда
0
, потому что не возможно иметь больше чем один триггер с тем же самым
EVENT_MANIPULATION
и ACTION_TIMING
на той же
самой таблице.
ACTION_STATEMENT
: Оператор, который будет выполнен,
когда триггер вызывается. Это - то же самое как текст, выведенный на экран в Statement
столбец вывода от SHOW TRIGGERS
.
Отметьте, что этот текст использует кодирование UTF-8.
ACTION_ORIENTATION
: Всегда содержит значение 'ROW'
.
ACTION_TIMING
: Активируется ли триггер прежде или после
оператора инициирования. Одно из двух значений 'BEFORE'
или 'AFTER'
.
ACTION_REFERENCE_OLD_ROW
и ACTION_REFERENCE_NEW_ROW
:
Старые и новые идентификаторы столбца, соответственно. Это означает это ACTION_REFERENCE_OLD_ROW
всегда содержит значение 'OLD'
и ACTION_REFERENCE_NEW_ROW
всегда содержит значение 'NEW'
.
SQL_MODE
: Режим SQL в действительности, когда триггер
был создан или изменен, и под которым выполняется триггер. Для разрешенных значений см. Раздел
5.1.7, "Режимы SQL Сервера".
DEFINER
: Учетная запись пользователя, который создал
триггер, в '
формат. user_name
'@'host_name
'
CHARACTER_SET_CLIENT
: Значение сеанса character_set_client
системная переменная, когда триггер создавался.
COLLATION_CONNECTION
: Значение сеанса collation_connection
системная переменная, когда триггер создавался.
DATABASE_COLLATION
: Сопоставление базы данных, с
которой связывается триггер.
Следующие столбцы в настоящий момент всегда содержат NULL
: ACTION_CONDITION
, ACTION_REFERENCE_OLD_TABLE
,
ACTION_REFERENCE_NEW_TABLE
, и CREATED
.
Пример, используя ins_sum
триггер, определенный в Разделе
18.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: 0 ACTION_CONDITION: NULL ACTION_STATEMENT: SET @sum = @sum + NEW.amount ACTION_ORIENTATION: ROW ACTION_TIMING: BEFOREACTION_REFERENCE_OLD_TABLE: NULLACTION_REFERENCE_NEW_TABLE: NULL ACTION_REFERENCE_OLD_ROW: OLD ACTION_REFERENCE_NEW_ROW: NEW CREATED: NULL SQL_MODE: DEFINER: me@localhost CHARACTER_SET_CLIENT: utf8 COLLATION_CONNECTION: utf8_general_ci DATABASE_COLLATION: latin1_swedish_ci
См. также Раздел
13.7.5.37,"SHOW TRIGGERS
Синтаксис".