我正在尝试为项目找到一种方法,用户可以在其中编辑记录,并能够查看这些记录的过去版本。这是一个使用列表的简化示例架构:
TABLE list (
id int auto_increment primary key,
user_id int,
title varchar(255)
);
TABLE list_tasks (
id int auto_increment primary key,
list_id int,
title varchar(255),
order int,
is_complete tinyint
);
因此,用户可能会进来并对列表进行几次编辑(例如,添加或删除任务,重新排序任务,标记某些任务完成,重命名任务等),然后保存它们。此时,我想生成列表和任务的“版本2”,并让他们能够查看以前的版本,但是当他们访问列表时,请始终获取最新版本。
是否存在用于以这种方式在MySQL数据库中处理版本控制数据的通用方法/设计模式?