我尝试使用Sequel Pro向MySQL数据库添加表触发器。我想要的行为是:
每当我的某个表中的某个特定列被更新时,我想在另一个表中记录旧值,以便稍后可以引用它。
我使用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'
附近使用正确的语法非常感谢任何帮助! 谢谢
答案 0 :(得分:1)
您需要进行两项更改:
IF
应以END IF
下面应该有效:
IF NEW.status = "Some String" THEN
INSERT INTO \`my_backup_table\` (id, status) VALUES (OLD.id, OLD.status)
END IF;