阻止更新数据库行中的多个列

时间:2013-02-20 09:06:50

标签: php mysql database phpmyadmin

我希望通过触发器阻止更新数据库行mysql中的两列,因为我的表是mymy,它们的两列是column1column2,行ID是{{ 1}}。如何在mysql触发器中运行它?

enter image description here

我试过它:

11

我有错误:

  

#1064 - 您的SQL语法出错;检查与MySQL服务器版本对应的手册,以获得正确的语法   在'BEFORE UPDATE附近,然后检查NEW.id_relation!= OLD.id_relation   或者NEW.active!'在第1行

如何解决?

2 个答案:

答案 0 :(得分:-1)

如果你真的不想更新column1和column2的值,那么你可以使用触发器将新值设置为旧值,从而永远不会更新它们 - 我相信这就是你正在寻找的对

CREATE TRIGGER test_trigger BEFORE UPDATE ON mymy
FOR EACH ROW BEGIN
  SET NEW.column1 = OLD.column1, NEW.column2 = OLD.column2
END

答案 1 :(得分:-1)

您在create trigger语句中遇到语法错误尝试从此链接检查查询的语法http://dev.mysql.com/doc/refman/5.0/en/create-trigger.html