У меня один и тот же триггер на двух столах.
Первый:
CREATE TRIGGER updateURL1 AFTER UPDATE ON table1
FOR EACH ROW
BEGIN
UPDATE table2 SET url=NEW.url WHERE uname=NEW.uname;
END;
Второй:
CREATE TRIGGER updateURL2 AFTER UPDATE ON table2
FOR EACH ROW
BEGIN
UPDATE table1 SET url=NEW.url WHERE uname=NEW.uname;
END;
Как я и ожидал, он пытается сделать бесконечный цикл, что очевидно. Но, хорошо для меня, это не так, потому что возникает ошибка, потому что он не может обновить только что обновленную таблицу.
Проблема, я использую форму php для редактирования URL-адреса пользователя и многих других сведений. Если mysql вызывает ошибку, я пишу это на странице.
Вопрос, есть ли способ сказать mysql не вызывать ошибку только для этой процедуры?