对于下面的示例表,有没有办法配置表以在UPDATE发生时使用Value列中的数据自动更新PreviousValue列?
table Settings
(
Setting varchar(255),
Value varchar(255),
PreviousValue varchar(255)
)
答案 0 :(得分:4)
CREATE TRIGGER my_trigger BEFORE UPDATE ON my_table FOR EACH ROW
SET NEW.PreviousValue = OLD.Value;
答案 1 :(得分:2)
如果没有触发器,您也可以通过以下方式实现此目的:
UPDATE Settings SET PreviousValue = Value, Value = :new_value WHERE Setting = :setting