我正在尝试为用 PLSQL/PHP 编写的现有数据库开发审计跟踪/跟踪解决方案 - 但是我仍然不确定是否有一个易于(实现和维护)的解决方案来跟踪字段/值的更改。例如,DB APP 的项目跟踪部分跟踪 200 多个字段,理想情况下,我想要一种很好的方式来显示更改历史记录,例如:
5/10/2010 - Project 435232 updated by John Doe
Changed Project Name (Old: Test Project; New: Super Test Project)
Changed Submission Date (Old: 5/10/2010; New: 5/11/2010)
Changed Description (Old: This is an example!; New: This is a test example)
基本上对于每个字段(db 列),它都会输出一个新行来显示旧/新值。到目前为止,我目前的想法是将当前版本的数据保存到临时表中,用新数据更新主表,然后将每一行加载到数组中并进行数组比较以确定差异。这似乎有点令人费解,如果有更简单的方法,我很想知道。
非常感谢任何想法或建议!