MYSQL - 每次都可以强制更新一列

时间:2014-01-29 15:36:17

标签: mysql triggers

我有一张桌子,上面有3列A,B和& C。 当有人更新任何列(A或B或两者)时,它也应该更新C列。

意味着有人不能只写“update tableName set a = 1,b = 2 where blah blah”。 应始终“update tableName set a = something,b = something2,c = something3 where blah blah”。 如果有人不这样做,则会返回一些错误。

我尝试使用触发器。但它并没有帮助我。以下是更新前执行的触发器。

BEGIN 
  DECLARE TIMESTAMP DATE DEFAULT now();
  DECLARE msg VARCHAR(255);
  IF NEW.C IS NULL OR NEW.C = "" THEN
    SET msg = concat("Trying TO UPDATE NULL OR empty VALUE of C.");
    SIGNAL SQLSTATE "4500" SET MESSAGE_TEXT = msg;
  END IF;
END

New.C在行中给出C的现有值

0 个答案:

没有答案