У меня есть MySQL (5.1.67) таблица 'трекер' с поля TIMESTAMP 'close_time.
В той же таблице у меня есть поле строки 'status'.
Я хочу обновить close_time поля со значением CURRENT_TIMESTAMP когда статус поля обновляется до определенного значения текста, например «Закрыты.MySQL ON триггер UPDATE - обновить ту же таблицу с CURRENT_TIMESTAMP и состояние
Вот пример с вкладышем: How can I write a trigger that updates rows in the same table, before the insert is commited?
Я пытался что-то вроде этого:
CREATE TRIGGER `close_time_trigger` BEFORE UPDATE ON `tracker` FOR EACH ROW
BEGIN
IF NEW.status = 'Closed' THEN
SET NEW.close_time = CURRENT_TIMESTAMP;
END IF;
END
Но я получил сообщение об ошибке: У вас ошибка в вашем SQL синтаксиса ... в строке 4.
Я пробовал некоторые другие варианты, которые я нашел, но ни один из них не работает. Пожалуйста, помогите создать правильный триггер для моего случая.
Что вы имеете в виду? Я хочу создать триггер для события UPDATE. Вот пример с «до обновления» и «новый»: http://dev.mysql.com/doc/refman/5.0/en/trigger-syntax.html – Vladimir
мой плохой, я пропустил это. до обновления, но после этого тоже. Я думаю, что ваш оператор обновления ошибочен. я отредактирую свой ответ – Alexo912
Я тоже пробовал этот путь, но ту же синтаксическую ошибку SQL, в строке 5 ... – Vladimir