|
||||
|
9.16. Таблица INFORMATION_SCHEMA TRIGGERS Таблица TRIGGERS обеспечивает информацию относительно триггеров. Вы должны иметь привилегию SUPER, чтобы обратиться к этой таблице. INFORMATION_SCHEMA Name SHOW Name Remarks TRIGGER_CATALOG NULL TRIGGER_SCHEMA TRIGGER_NAME Trigger EVENT_MANIPULATION Event EVENT_OBJECT_CATALOG NULL 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 extension DEFINER MySQL extension Примечания: Столбцы TRIGGER_SCHEMA и TRIGGER_NAME содержат имя базы данных, в которой находится триггер и его имя, соответственно. Столбец EVENT_MANIPULATION содержит одно из значений 'INSERT', 'DELETE' или 'UPDATE'. Каждый триггер связан точно с одной таблицей. Столбцы EVENT_OBJECT_SCHEMA и EVENT_OBJECT_TABLE содержат базу данных, в которой эта таблица расположена, и имя таблицы. Инструкция 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, который был установлен, когда триггер был создан (и таким образом, который остается в силе для триггера, когда это вызывается, независимо от текущей ситуации). Возможный диапазон значений для этого столбца такой же, как для переменной системы sql_mode. Столбец DEFINER был добавлен в MySQL 5.1.2. DEFINER указывает, кто определил триггер. Следующие столбцы в настоящее время всегда содержат NULL: TRIGGER_CATALOG, EVENT_OBJECT_CATALOG, ACTION_CONDITION, ACTION_REFERENCE_OLD_TABLE, ACTION_REFERENCE_NEW_TABLE, CREATED. Пример, используем ins_sum: mysql> SELECT * FROM INFORMATION_SCHEMA.TRIGGERS\G *************************** 1. row *************************** TRIGGER_CATALOG: NULL TRIGGER_SCHEMA: test TRIGGER_NAME: ins_sum EVENT_MANIPULATION: INSERT EVENT_OBJECT_CATALOG: NULL 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: BEFORE ACTION_REFERENCE_OLD_TABLE: NULL ACTION_REFERENCE_NEW_TABLE: NULL ACTION_REFERENCE_OLD_ROW: OLD ACTION_REFERENCE_NEW_ROW: NEW CREATED: NULL SQL_MODE: DEFINER: me@localhost |
|
||
Главная | Контакты | Нашёл ошибку | Прислать материал | Добавить в избранное |
||||
|