SQL Server Sys表,其中时间戳为每个表的最后插入行

时间:2014-06-16 10:07:12

标签: sql-server sql-server-2008-r2 dmv

SQL Server 2008 R2中是否有任何系统表或dmv包含有关针对任何用户表发出的最后一个DML语句(select除外)的信息?

我在sys.tables中看到有一个modify_date列,但它只适用于任何表更改(DDL语句)。 我不想在db中的每个表上创建触发器,也不想为此作用域创建数据库级别的触发器。

这样做的原因是我希望看到最后一次在每个表中插入,更新或删除语句的时间,以便查看是否可以删除一些不再使用的表 - 这用于DWH数据库,其中数据库中的每个表应该至少每周/每月/每季度/每年具有这3个操作中的任何一个。

1 个答案:

答案 0 :(得分:1)

选项1:
为您的数据库启用更改数据捕获。 请参阅以下链接获取CDC:

http://technet.microsoft.com/en-us/library/cc627369%28v=sql.105%29.aspx

选项2:
为每个表创建触发器,并在任何表中发生INSERT / UPDATE / DELETE时执行公用表的记录(旧传统方法)。