我试图找出对我们的 sql 2005 db 中的特定表进行最后一次插入/更新的时间。数据没有时间戳,所以我不能这么说。那里有任何 dmv 可以帮助我吗?
谢谢,惠普
我试图找出对我们的 sql 2005 db 中的特定表进行最后一次插入/更新的时间。数据没有时间戳,所以我不能这么说。那里有任何 dmv 可以帮助我吗?
谢谢,惠普
我找到了一个可以帮助你的链接:
来自 blog.sqlauthority.com 的上次更新时间
该帖子的一部分包含以下代码:其中“AdventureWorks”是目录名称,“test”是表名称
SELECT OBJECT_NAME(OBJECT_ID) AS DatabaseName, last_user_update,*
FROM sys.dm_db_index_usage_stats
WHERE database_id = DB_ID( 'AdventureWorks')
AND OBJECT_ID=OBJECT_ID('test')
这段代码:
SELECT OBJECT_NAME(OBJECT_ID) AS DatabaseName, last_user_update,*
FROM sys.dm_db_index_usage_stats
WHERE database_id = DB_ID( 'AdventureWorks')
AND OBJECT_ID=OBJECT_ID('test')
工作正常,但是如果您查看源表: sys.dm_db_index_usage_stats 您会意识到必须对该表进行索引才能使它们显示在此处。您可能认为肯定所有表都已编入索引,我们为数据仓库拍摄快照,并且不需要对这些表进行索引,但是我们确实希望向人们展示上次更新的时间。
如果您在没有索引的 SQL 中创建表并更新它/添加数据,则会出现此 sys.dm_db_index_usage_stats 更新。我们使用 SSIS 更新我们的表,并且在 sys.dm_db_index_usage_stats 中我们的表没有条目。