【发布时间】:2010-03-23 08:42:25
【问题描述】:
SQL Server 2005 是否维护内置的、可查询的、行级的最后修改时间戳元数据?
我正在对不包含任何类型的列来跟踪修订日期/时间戳的数据库进行一些分析。我通常为此目的创建列,但这个数据库的设计者没有,所以我被困在重建他的数据的历史记录。
【问题讨论】:
标签: sql-server tsql metadata
SQL Server 2005 是否维护内置的、可查询的、行级的最后修改时间戳元数据?
我正在对不包含任何类型的列来跟踪修订日期/时间戳的数据库进行一些分析。我通常为此目的创建列,但这个数据库的设计者没有,所以我被困在重建他的数据的历史记录。
【问题讨论】:
标签: sql-server tsql metadata
不,您必须自己将其构建到您的表中。
许多人在每个表上添加某种 LastChangeDate 和 LastChangeUserID 列来跟踪这些。
如果它不存在,那么您将受制于可以从相关表中提取的任何数据(如果有的话)。
【讨论】:
如果没有明确的更改跟踪,您唯一真正的选择是查看数据库备份和事务日志。您可以使用DBCC log 命令获取一些信息。
【讨论】:
没有什么是自动的。
我喜欢使用AutoAudit - 将它应用于表格非常轻松,并且效果很好。它甚至会为已删除的行创建视图和一个 DDL 触发器,以便在表架构发生更改时自动更新触发器。
【讨论】: