1
我在两个表上有相同的触发器。两个方向更新后的mysql触发器
第一招:
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表单编辑用户的网址和许多其他信息。如果mysql触发错误,我将它写在页面上。
这个问题,有没有办法告诉mysql不要触发该过程的错误?
我在哪里放? – Marm 2011-12-21 21:02:06
这个页面有一个例子。我会将其添加到答案中。 – 2011-12-21 22:29:25
非常感谢,我非常喜欢保护者的第二种方式。这将是更好的代码,并不会排除每个SQLEXCEPTION。 – Marm 2011-12-22 19:57:51