Mysql触发器有两个表和if语句

时间:2012-08-28 10:12:45

标签: mysql join if-statement triggers

我找不到解决此问题的任何解决方案。 当另一个表更新时,我的数据库需要更新一个表中的字段。 (仅当新值为5或7且新prop.key为" status_id") 但更新的表格不包含我需要的值。它只包含另一个表的ID。

我不确定此语句的语法。这个人不会工作。 anybode可以帮助我吗?

这就是我的尝试:

delimiter $$

CREATE TRIGGER autoClosedOn AFTER INSERT ON journal_details
  FOR EACH ROW BEGIN
    IF
        NEW.prop_key = "status_id"
    AND  NEW.value = "5"
    OR  NEW.value = "7"
   THEN
   UPDATE
        issues i
        JOIN journals j
          ON j.journalized_id = i.id
     SET 
        i.closed_on = j.created_on;
     WHERE  j.id = NEW.jounal_id;
   END IF;
  END$$

delimiter ;

1 个答案:

答案 0 :(得分:0)

在更新声明的WHERE子句之前,您有一个多余的分号。