我试图找出一张表被修改的时间。使用下面两组不同的代码,我得到两个不同的答案:
Select *
from sys.tables
where name = 'AN_StockChecks_000_Specs_010_StockChecks_010_PlantStockCheckSettings'
输出:
modify_date
-----------------------
2015-12-07 15:40:58.557
方法#2:
SELECT
OBJECT_NAME(OBJECT_ID) AS DatabaseName, last_user_update, *
FROM
sys.dm_db_index_usage_stats
WHERE
database_id = DB_ID( 'IESA_DWHS')
AND ID = OBJECT_ID('AN_StockChecks_000_Specs_010_StockChecks_010_PlantStockCheckSettings')
输出:
last_user_update
-----------------------
2015-12-10 09:25:43.290
答案 0 :(得分:0)
modify_date
中的sys.tables
是上次修改表结构的日期 - 上次添加或删除列或更改列时的日期属性。
或者正如SQL Server联机丛书所说:
<强> modify_date 强>
使用 ALTER 语句对上次修改对象的日期。如果对象是表或视图,则在创建或更改表或视图上的聚簇索引时,modify_date也会更改。
它与该表上的数据操作无关。