Spec-Zone.ru › MySQL 5.7

23.3 Использование триггеров

  • 23.3.1 Синтаксис и примеры триггеров
  • 23.3.2 Метаданные триггеров

Триггер — это именованный объект базы данных, связанный со таблицей, который активируется при возникновении определённого события в таблице. Триггеры могут использоваться для проверки значений, вставляемых в таблицу, или для выполнения вычислений со значениями, участвующими в обновлении.

Триггер определяется так, чтобы он активировался при вставке, обновлении или удалении строк в связанной таблице. Эти операции над строками являются событиями триггера. Например, строки могут быть вставлены операторами INSERT или LOAD DATA, и триггер вставки активируется для каждой вставленной строки. Триггер может быть настроен на активацию до или после события триггера. Например, можно настроить триггер, который активируется перед каждой строкой, вставляемой в таблицу, или после каждой обновлённой строки.

Важно

Триггеры MySQL активируются только для изменений, внесённых в таблицы операторами SQL. Это включает изменения в базовых таблицах, на которых основаны обновляемые представления. Триггеры не активируются при изменениях в таблицах, выполненных API, которые не передают операторы SQL в сервер MySQL. Это означает, что триггеры не активируются при обновлениях, выполненных с помощью API NDB.

Триггеры не активируются при изменениях в таблицах INFORMATION_SCHEMA или performance_schema. Эти таблицы на самом деле являются представлениями, и триггеры не допускаются для представлений.

В следующих разделах описан синтаксис создания и удаления триггеров, показаны некоторые примеры их использования и указано, как получить метаданные триггеров.

Дополнительные ресурсы

  • При работе с триггерами вам могут быть полезны Форумы пользователей MySQL.

  • Ответы на часто задаваемые вопросы о триггерах в MySQL см. в разделе A.5, «MySQL 5.7 FAQ: Триггеры».

  • Существуют некоторые ограничения на использование триггеров; см. раздел 23.8, «Ограничения на хранимые программы».

  • Логирование двоичных данных для триггеров происходит так, как описано в разделе 23.7, «Логирование двоичных данных хранимых программ».

© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/mysql-5.7-en/triggers.html

Spec-Zone.ru

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