sql - 是否存在版本控制数据库存储引擎?

标签 sql mysql database refactoring-databases

我只是想知道是否存在允许您对行级内容进行版本控制的存储引擎类型。例如,如果我有一个简单的表,其中包含 ID、名称、值,并且 ID 是 PK,我可以看到第 354 行以 (354, "zak", "test")v1 开始,然后更新为 (354, "zak", "this is version 2 of the value")v2 ,并且可以在行上看到更改历史记录,例如选择历史记录(值),其中 ID = 354。

这是一种深奥的东西,但每次进行更改时都必须继续编写这些单独的历史表和函数...

最佳答案

看来您正在寻找更多的审核功能。 Oracle 和其他几个 DBMS 具有完整的审计功能。但是许多 DBA 最终仍然实现基于触发器的行审计。这完全取决于您的需求。

Oracle 支持多种粒度的审计,这些粒度很容易从命令行进行配置。

我看到你被标记为 MySQL,但询问了任何存储引擎。无论如何,其他答案都在说同样的话,所以我要删除这篇文章,因为它最初是关于闪回功能的。

关于sql - 是否存在版本控制数据库存储引擎?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2503510/

相关文章:

sql - 如果列已更新,则将变量用于 UPDATE() 检查器

sql - 如何从表中加入 COUNT,然后用另一个 JOIN 影响该 COUNT

sql - 自连接比较来自同一张表的季度数据?

php - 使用复选框从 mysql 检索外键、名称和值

java - 使用设置参数在 JPA 查询中插入特殊字符

sql - 无法在表或索引 View 上使用 CONTAINS 或 FREETEXT 谓词(它不是全文索引)

mysql - 按日期选择最高/最大总和组

mysql - 具有多个相似实体的数据库最佳实践

mysql - 如何检索日期从一个月的第一天开始的所有行

php - Laravel/Eloquent 关系不一致