在table1上插入触发器后,在table2上具有Update IF条件

时间:2016-02-24 10:42:51

标签: mysql

我想在插入后创建触发器'在table1上

如果我在Table1中插入记录 它将检查表2中的相应ID并更新其状态 表2中的相应ID。 table2上还有其他条件。 该ID的状态应为Null。

到目前为止我的尝试。 但它不起作用

AuthType Basic
AuthUserFile /www/.site_htpasswd
AuthName "Protected Area"

<RequireAny>
    Require ip 1.2.3.4
    Require valid-user
</RequireAny>

2 个答案:

答案 0 :(得分:0)

你有许多sintax错误,例如set a.status= 'coordination pass',之后的逗号或触发器名称定义等。这是正确的triger sintax

CREATE TRIGGER `table1_AFTER_INSERT` AFTER INSERT ON `table1`
FOR EACH ROW BEGIN

    UPDATE `table2` a 
    SET a.status= 'coordination pass'
    WHERE a.ID = NEW.ID AND a.status is NULL;

END

答案 1 :(得分:0)

正如我看到你的触发器有两个错误,首先是你使用的表名&#39;单引号和第二个是设置a.status =&#39;协调传递&#39;,最后一个逗号

CREATE TRIGGER table1_AFTER_INSERT
AFTER INSERT ON table1` 
FOR EACH ROW 
BEGIN 
   UPDATE table2 a 
   SET a.status= 'coordination pass'
   WHERE a.ID = new.ID AND a.status is Null;
END;