Php 数据库条目修改历史记录
我目前正在开发一个大型管理系统(在PHP中使用Zend框架,但这并不是这个问题的真正解决方案),在这个系统中我必须管理多个条目。每个条目在两个表上都有许多字段和范围,它们是1对多关系(通过单个外键)。第一个表中大约有50个字段,第二个表中有30个字段 我现在正处于对用户所做的不同修改(以及一些自动化任务)进行历史跟踪的阶段。每个条目可以部分或全部回滚到以前的值 我正在考虑使用一个与CMS Typo3中的系统类似的系统。一个表,用于管理具有以下字段的整个历史记录Php 数据库条目修改历史记录,php,serialization,storage,history,Php,Serialization,Storage,History,我目前正在开发一个大型管理系统(在PHP中使用Zend框架,但这并不是这个问题的真正解决方案),在这个系统中我必须管理多个条目。每个条目在两个表上都有许多字段和范围,它们是1对多关系(通过单个外键)。第一个表中大约有50个字段,第二个表中有30个字段 我现在正处于对用户所做的不同修改(以及一些自动化任务)进行历史跟踪的阶段。每个条目可以部分或全部回滚到以前的值 我正在考虑使用一个与CMS Typo3中的系统类似的系统。一个表,用于管理具有以下字段的整个历史记录 历史号 入口id 条目表 上次\
- 历史号
- 入口id
- 条目表
- 上次\u修改\u时间戳
- 上次修改用户
- 资料
我正在寻求有关改进此解决方案和简化实施的方法的建议。欢迎提供任何有助于我的建议或文档我会添加一个阈值,删除或转储到外部文件中所有早于某个时间段的条目。我会添加一个阈值,删除或转储到外部文件中所有早于某个时间段的条目。你只是在序列化旧数据吗,假设数据的最新版本在其他表格中?@Chris:是的,我是(过去,我不再从事这个项目)。最新的数据是原始表中的数据。随着时间的推移,您可能会发现模式与历史有差异,如果很多字段都发生了更改,则只会给出部分历史。我正在考虑如何在我正在构建的一些web应用程序中实现历史跟踪/更改(讽刺的是,还使用了PHP/Zend Framework)。我觉得这个想法很有趣。我想知道,您是否必须处理复合条目ID?您是如何解决的?我有一个表有一个复合ID,但我可以很容易地给它一个代理或人工ID。不,我不必使用复合ID,但我会用同样的方法,使用代理ID,你只是序列化旧数据,并假设数据的最新版本在其他表中吗?@Chris:是的,我是(以前,我不再从事此项目)。最新的数据是原始表中的数据。随着时间的推移,您可能会与历史记录存在架构差异,如果许多字段发生更改,则只会提供部分历史记录。我正在考虑如何在我正在构建的某些web应用程序中实现历史记录跟踪/更改(讽刺的是使用PHP/Zend Framework)。我觉得这个想法很有趣。我想知道,你是否必须处理复合项ID以及如何解决它?我有一个表有一个复合ID,但我可以很容易地给它一个代理ID或人工ID。不,我不必使用复合ID,但我会用同样的方法,使用代理ID