使用PHP和MySQL保留修订历史记录

Kei*_*ith 6 php mysql

我有几个表,我想保留修订历史记录.完成此任务的最佳方法是什么?这将是几个领域(20左右).

我应该创建一个重复的表并只提交旧的数据吗?我应该使用触发器吗?或者我应该创建一个单独的表并只跟踪所做的更改?

sfu*_*ger 5

我们非常满意我们的选择,每个版本的实体使用两个表.

表格看起来与此类似:

person:

  • id(PK)
  • 版本(乐观锁定计数器)
  • 当前(外键引用person_version)
  • ......(任何不会改变的财产)

person_version:

  • id(PK)
  • person(非null)(外键引用person)
  • 时间戳(用于排序)
  • ......(任何可能改变的财产)

由于条目person_version不会改变,因此很容易缓存它们(只要没有对可能更改的表的引用)


JF *_*ion 2

这是我几个月前问过的问题,但我会再次以同样的方式这样做

数据库条目修改历史