我正在使用MySQL和InnoDB。我正在对所有表的记录进行版本控制 - 记录的最新版本有一个名为'lv'的列设置为1,并且将'lv'列设置为1的该ID的先前记录必须设置为0有一个新版本。我每次插入新记录(版本)时都会进行两次查询。有没有办法让InnoDB自动完成?感谢您的投入。
答案 0 :(得分:1)
你可以使用触发器吗?
这是未经测试的,但我认为这样的事情是可能的:
delimiter |
CREATE TRIGGER newversion BEFORE INSERT ON yourTable
FOR EACH ROW BEGIN
UPDATE yourTable SET lv = 0 WHERE lv = 1;
END;
|
delimiter ;
在那里可能存在一些错误,因为它是一种基于the manual的快速类型:)