MySQL不可修改的列?

时间:2011-02-27 22:43:09

标签: mysql

一旦初始设置,是否可以声明MySQL中的列应该是不可修改的?我有一个具有以下定义的列:created timestamp default current_timestamp我想确保在创建行之后没有人对它感到困惑。

1 个答案:

答案 0 :(得分:3)

您可以使用BEFORE UPDATE触发器完成此操作:

DELIMITER $$
    CREATE TRIGGER trFoo BEFORE UPDATE ON foo
    FOR EACH ROW BEGIN
      IF NEW.Bar != OLD.Bar THEN
        SET NEW.Bar = OLD.Bar;      
      END IF;
    END$$
DELIMITER ;