Ограничения триггеров
Следующие ограничения применяются к триггерам.
- Все ограничения, перечисленные в Ограничения хранимых процедур.
- Все ограничения, перечисленные в Ограничения хранимых функций.
- До версии MariaDB 10.2.3, каждая таблица может иметь только один триггер для каждой комбинации времени/события (т.е. нельзя определить два триггера BEFORE INSERT для одной и той же таблицы).
- Триггеры всегда выполняются для каждой строки. Стандартный
FOR EACH STATEMENTвариант не поддерживается в MariaDB. - Триггеры не могут работать с таблицами в базах данных mysql, information_schema или performance_schema.
- Не может вернуть результат набора.
- Оператор RETURN запрещен, так как триггеры не возвращают значений. Используйте LEAVE для немедленного выхода из триггера.
- Триггеры не активируются действиями внешних ключей.
- Если триггер загружен в кэш, он не перегружается автоматически при изменении метаданных таблицы. В этом случае триггер может работать с устаревшими метаданными.
- По умолчанию, при репликации на основе строк, триггеры выполняются на мастер-сервере, а эффекты их выполнения реплицируются на серверы-следующие. Однако, начиная с MariaDB 10.1.1, можно запускать триггеры на серверах-следующих. См. Запуск триггеров на сервере-следующем для событий на основе строк.
См. также
Содержимое, воспроизведенное на этом сайте, является собственностью соответствующих владельцев, и это содержимое не проверяется заранее компанией 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/trigger-limitations/