如何查找数据库中的最后修改

Din*_*war 5 sql t-sql database sql-server-2008

我有一个应用程序,它将所有数据存储在 SQL Server 2008 中。该应用程序创建、修改、更新表。数据库的名称是XLPR_2001,它包含近500个表。

我想找出我通过应用程序进行的更改是否会影响整个数据库(XLPR_2001)。如果我找到它,那么我可以直接在数据库中直接进行这些更改,我可以非常快地完成工作。

我在网上搜索它,但对我的情况没有帮助。

Yog*_*rma 7

作为您的问题,您正在寻找表更改效果:

SELECT name [TableName],
       Create_date [CreateDate],
       modify_date [LastUpdate]
FROM sys.all_objects
WHERE type = 'U'
ORDER BY modify_date DESC;
Run Code Online (Sandbox Code Playgroud)

从上面的SQL命令中,它将为您提供Table_Name最近受某些活动(即插入、更新或删除)影响的所有内容。

结果 :

在此输入图像描述


Din*_*war 5

@sarslash 和 @Yogesh 在我的例子中,你的代码显示了非常旧的结果。我在某处找到了下面的代码,它工作得很好。

select
    object_name(object_id) as OBJ_NAME, *
from
    sys.dm_db_index_usage_stats
where
    database_id = db_id(db_name())
Order by
    dm_db_index_usage_stats.last_user_update desc
Run Code Online (Sandbox Code Playgroud)