UPDATE все еще выполняется, если триггер BEFORE создает ошибку?

Если нет, есть ли способ отменить ОБНОВЛЕНИЕ из триггера?

1 ответ

Решение

РЕДАКТИРОВАТЬ: Если триггер BEFORE не работает, то ОБНОВЛЕНИЕ отменяется.

Мой предыдущий глупый ответ имел в виду ПОСЛЕ триггеров. здесь это на всякий случай, если кому-то все еще это нужно: в случае триггера ПОСЛЕ, тогда ОБНОВЛЕНИЕ не отменяется при сбое триггера. Для "отмены" ОБНОВЛЕНИЯ необходимо использовать транзакции, а затем ОТКРЫТЬ транзакцию в случае ошибки или зафиксировать транзакцию в случае успеха. больше информации о транзакциях в MySQL можно найти по адресу: http://dev.mysql.com/doc/refman/5.0/en/commit.html

Другие вопросы по тегам