我正在尝试添加一个表触发器到MySQL DB使用Sequel Pro。我想要的行为是:
每当我的一个表中的特定列被更新时,我希望将旧值记录在另一个表中,以便以后可以引用它。
我正在使用GUI创建表触发器:
动作时间:事件前:更新
IF NEW.status = "Some String" THEN
INSERT INTO 'my_backup_table' (id, status) VALUES (OLD.id, OLD.status)
END;
我一直收到语法错误:无法创建指定的触发器。
MySQL说:您的SQL语法有一个错误;请查看与您的MySQL服务器版本相对应的手册,以获得正确的语法,以便在“my_backup_table”附近使用。
任何帮助都是非常感谢的!谢谢
发布于 2017-04-27 18:51:32
您需要进行两个更改:
应使用反引号将
END IF
结尾
下面的代码应该可以:
IF NEW.status = "Some String" THEN
INSERT INTO \`my_backup_table\` (id, status) VALUES (OLD.id, OLD.status)
END IF;
https://stackoverflow.com/questions/43665517
复制相似问题