Spec-Zone.ru › MariaDB

ПОКАЗ ТРИГГЕРОВ

Синтаксис

SHOW TRIGGERS [FROM db_name]
    [LIKE 'pattern' | WHERE expr]

Описание

SHOW TRIGGERS перечисляет триггеры, в настоящее время определённые для таблиц в базе данных (по умолчанию, если не указан FROM оператор). Для выполнения этого оператора требуется TRIGGER привилегия (до MySQL 5.1.22 требовалась SUPER привилегия).

Оператор LIKE , если он присутствует в отдельности, указывает имена таблиц для сопоставления, и заставляет оператор отображать триггеры для этих таблиц. Операторы WHERE и LIKE можно использовать для выбора строк с помощью более общих условий, как описано в Расширенном SHOW.

Аналогичная информация хранится в таблице information_schema.TRIGGERS.

MariaDB начиная с 10.2.3

Если для одного действия определено несколько триггеров, то триггеры отображаются в порядке выполнения.

Примеры

Для триггера, определённого в Обзоре триггеров:

SHOW triggers Like 'animals' \G
*************************** 1. row ***************************
             Trigger: the_mooses_are_loose
               Event: INSERT
               Table: animals
           Statement: BEGIN
 IF NEW.name = 'Moose' THEN
  UPDATE animal_count SET animal_count.animals = animal_count.animals+100;
 ELSE 
  UPDATE animal_count SET animal_count.animals = animal_count.animals+1;
 END IF;
END
              Timing: AFTER
             Created: 2016-09-29 13:53:34.35
            sql_mode: 
             Definer: root@localhost
character_set_client: utf8
collation_connection: utf8_general_ci
  Database Collation: latin1_swedish_ci

Вывод всех триггеров, связанных с определённой таблицей:

SHOW TRIGGERS FROM test WHERE `Table` = 'user' \G
*************************** 1. row ***************************
             Trigger: user_ai
               Event: INSERT
               Table: user
           Statement: BEGIN END
              Timing: AFTER
             Created:  2016-09-29 13:53:34.35
            sql_mode: 
             Definer: root@%
character_set_client: utf8
collation_connection: utf8_general_ci
  Database Collation: latin1_swedish_ci
SHOW triggers WHERE Event Like 'Insert' \G
*************************** 1. row ***************************
             Trigger: the_mooses_are_loose
               Event: INSERT
               Table: animals
           Statement: BEGIN
 IF NEW.name = 'Moose' THEN
  UPDATE animal_count SET animal_count.animals = animal_count.animals+100;
 ELSE 
  UPDATE animal_count SET animal_count.animals = animal_count.animals+1;
 END IF;
END
              Timing: AFTER
             Created: 2016-09-29 13:53:34.35
            sql_mode: 
             Definer: root@localhost
character_set_client: utf8
collation_connection: utf8_general_ci
  Database Collation: latin1_swedish_ci
  • character_set_client — значение переменной сессии character_set_client в момент создания триггера.
  • collation_connection — значение переменной сессии collation_connection в момент создания триггера.
  • Database Collation — сортировка базы данных, с которой связан триггер.

Эти столбцы были добавлены в MariaDB/MySQL 5.1.21.

Старые триггеры, созданные до MySQL 5.7 и MariaDB 10.2.3, содержат NULL в столбце Created.

См. также

  • Обзор триггеров
  • CREATE TRIGGER
  • DROP TRIGGER
  • таблица information_schema.TRIGGERS
  • SHOW CREATE TRIGGER
  • Ограничения триггеров
Содержимое, воспроизведённое на этом сайте, является собственностью соответствующих владельцев, и это содержимое не проверяется заранее компанией MariaDB. Мнения, информация и мнения, выраженные в данном содержимом, не обязательно отражают точку зрения MariaDB или любой другой стороны.

© 2023 MariaDB
Licensed under the Creative Commons Attribution 3.0 Unported License and the GNU Free Documentation License.
https://mariadb.com/kb/en/show-triggers/

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API