如何在MySQL表中更新后触发操作?

时间:2014-07-25 13:59:03

标签: mysql sql database

基本上我有类似的东西:

TABLE PARENTS
...
name VARCHAR(45)
lastModified DATETIME
idModified INT
...

TABLE CHILDRENS
...
name VARCHAR(45)
parentName VARCHAR(45)
lastModified DATETIME
idModified INT
...

所以我想要的是当我表演时:

UPDATE CHILDRENS SET lastModified=NOW(), idModified=123 WHERE NAME='someName';

parentName中指定的父级也必须使用相同的数据进行更新。

我可以通过我使用的编程语言手动完成,但这不是重点,我不想向数据库发送另一个请求。


编辑:我是mysql的新手,我不知道如何使用触发器哦,我写了孩子们;坏语法,抱歉。

1 个答案:

答案 0 :(得分:0)

<强> UNTESTED

 CREATE TRIGGER triggers_name
AFTER UPDATE 
ON
CHILDRENS
FOR EACH ROW 
  UPDATE PARENTS,NEW
        SET PARENT.lastModified=NEW.lastModified,
            PARENT.idModified=NEW.idModified
        WHERE PARENT.name=NEW.parentName

希望它现在有效,因为我现在无法测试它:/