是否存在保留所有历史记录的数据库实现?

时间:2009-07-07 08:52:29

标签: database version-control

使用源代码的版本控制系统(如subversion)是有道理的,因为它允许您退出错误,审核更改,制作无痛快照,准确发现出错的地方以便您可以改进您的流程等。出于同样的原因,对业务数据进行更改跟踪是有意义的,而且很多系统都会这样做。

关于如何在普通数据库之上实现此问题已经有一些问题:

对于一个如此有用和受欢迎的功能,我们都需要重新发明轮子似乎很奇怪。 是否有任何现有的数据库实现已经解决了这个问题?我想象这样的系统会扩展SQL语法以便于查询历史记录。

5 个答案:

答案 0 :(得分:5)

查看temporal databases,例如TimeDB

答案 1 :(得分:2)

不是关系型数据库(您没有说过必须这样),但CouchDB内置了版本控制。

答案 2 :(得分:1)

空间要求过高,所以这就是你通常自己动手的原因。

根据您的工具包,有不同的解决方案:

答案 3 :(得分:0)

就数据而言,我相信它被称为"change data capture“。

答案 4 :(得分:-1)

鉴于大多数国家/地区都要求记录所有会计事务,因此每个数据库都可以记录审计历史记录。