gpt4 book ai didi

database - 表修订/历史?

转载 作者:搜寻专家 更新时间:2023-10-30 20:22:30 29 4
gpt4 key购买 nike

我正在尝试找出在关系数据库中保存表的历史记录/修订的最佳方法。

我进行了一些研究和阅读,但不确定跟踪更改的最佳方式是什么。对于我的主表,我很确定我已经确定了一个修订表,以保持跟踪(见图),但我不确定是关系表。也许只是一个包含更改的审计跟踪表?

看看下面的示例图片,保存 movies_has_actors 表历史记录的最佳方法是什么?我不能简单地处理两个主表(电影、 Actor ),因为我需要知道在建立关系时哪个 MOVIE revision_id 是事件的。如果我想跟踪哪个用户添加了关系(用户表不在示例图片中)怎么办?我不想将所有内容都保留在关系表本身中,因为那样只会变得庞大并减慢查询...![alt text][1]

总而言之,保存关系表历史记录的最佳方式是什么?

图片链接:img115.imageshack.us/my.php?image=44623598nv1.jpg

[1]: Image

最佳答案

在 SQL Server 2008 中,MSDN 上称为 CDC(更改数据捕获)CDC 的新功能可以提供帮助。 CDC 能够在不编写触发器或其他机制的情况下将表数据的更改记录到另一个表中,Change Data Capture 记录对 SQL Server 中表的插入、更新和删除等更改,从而使更改的详细信息在关系中可用格式。

Channel9 视频 - https://channel9.msdn.com/posts/ashishjaiman/CDC-Change-Data-Capture-SQL-Server-2008/

关于database - 表修订/历史?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/503472/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com