Что происходит, когда ПЕРЕД УДАЛИТЬ ВКЛ "триггер таблицы" не удается в MYSQL? - PullRequest
0 голосов
/ 27 июня 2019

Мой вопрос - общий вопрос о перед триггерами .

Что происходит, когда по какой-то причине происходит сбой BEFORE DELETE ON "таблица" (скажем, ограничение внешнего ключа при попытке удалить строку.)?

Если до этого произошел сбой, он обновляет несколькополя в другой таблице.Являются ли эти изменения эффективными, даже если затронутые строки не удалены?

1 Ответ

1 голос
/ 27 июня 2019

Это есть в документации по MySQL :

  • Если сбой триггера ДО, операция в соответствующей строке не выполняется.
  • Ошибка во время триггера BEFORE или AFTER приводит к сбою всего оператора, вызвавшего вызов триггера.
  • Для транзакционных таблиц сбой оператора должен вызывать откат всех изменений, выполненных оператором. Сбой триггера приводит к сбою оператора, поэтому сбой триггера также вызывает откат. Для нетранзакционных таблиц такой откат не может быть выполнен, поэтому, хотя оператор не выполняется, любые изменения, выполненные до точки ошибки, остаются в силе.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...