Вкратце: мне нужно обновить строку в триггере BEFORE DELETE
и получить ошибку:
кортеж, который должен быть обновлен, уже был изменен операцией, запущенной текущей командой
Я знаю, что нет смысла обновлять строку, которая будет удалена, но ...
В моем случае у меня есть функция отмены заказа. Он выполняет некоторые операции, включая удаление кода скидки из заказа (чтобы этот код можно было использовать снова). Я хочу использовать ту же функцию в триггере BEFORE DELETE
(удаление ордера также является своего рода отменой).
Теперь мне нужно вручную вызвать функцию отмены и затем удалить ордер , Я хочу избежать риска случайного удаления ордера без предварительного его отмены, поэтому триггер BEFORE DELETE
является очевидным выбором.
Есть ли обходной путь? Любые предложения?
Почему я не могу обновить строку, которая будет удалена?