查找从没有日期修改列的日期修改的记录?

时间:2012-01-11 00:41:33

标签: sql sql-server sql-server-2008 sql-server-2005 tsql

我确信没有,但我希望有人可以帮我解决,如果有一种方法可以让我看到一张桌子最后有一个记录添加到它(只是历史上没有表格修改为在未来的实例中,我已经为表格添加了触发器以用于未来的问题。)

我们受到其他人的历史工作的摆布,不幸的是,其中一项工作涉及不在我们的许多表格中使用日期修改字段。我现在需要检查我们的模式以找到可以取消委托的潜在表格,并想知道是否有办法做到这一点?

2 个答案:

答案 0 :(得分:2)

您实际上是SOL,但如果“关闭足够好”,请查看sys.dm_db_index_usage_stats,特别是last_user_update列。那将告诉你最后一次发生的事情与该指数混乱。如果仅筛选到主键索引,那么通常表示插入的行。

select 
so.name, si.name, us.last_user_update
from  sys.dm_db_index_usage_stats us
inner join sys.objects so
    on so.object_id = us.object_id
inner join sys.indexes si
    on  si.index_id = us.index_id
    and si.object_id = us.object_id
where si.is_primary_key = 1

答案 1 :(得分:0)

您应该能够使用sql server元数据来获取此信息:

SELECT
    [name],
    create_date,
    modify_date
FROM sys.tables
ORDER BY
    modify_date DESC

有关更详细的指南,请查看此内容:http://www.google.co.uk/search?q=sql+table+last+modified