探究MSSQL中查找改表时间的技巧(mssql查找改表时间)
MSSQL中查找改表时间是好几种操作,但最重要的一种方法就是利用SQL语句查询表的创建时间和修改时间。
1、第一种查找改表时间的技巧,便是使用内置函数Sys.Tables。Sys.Tables可以帮助我们获得表的创建时间,其语法如下:
SELECT name, create_date
FROM sys.tables WHERE type ='U'
ORDER BY create_date DESC;
其中,type=’U’表示“用户表”,根据create_date字段可以查出改表的创建时间,可以进行排序。
2、第二种技巧是查看索引。在查找表的修改时间时,对于sql server 2008版本,可以利用以下语句查看改表的最近更新时间:
“`
SELECT OBJECT_NAME(Object_id) Table_Name,
agg.[name] Index_Name,
CONVERT(VARCHAR(20), agg.refresh_date, 102) Refresh_Date
FROM sys.dm_db_incremental_stats_properties ( DB_ID(), NULL, NULL, NULL ) agg
INNER JOIN sys.indexes ind on agg.object_id = ind.object_id
GROUP BY agg.[name], agg.refresh_date, ind.object_id
refresh_date语句查出的是改表的最后更新时间,可进行排序来查看。
3、第三种技巧就是用change_tracking方法。可将以下语句放入MSSQL:
SELECT CONVERT(VARCHAR(15), sys.fn_cdc_get_min_lsn(‘Table_Name’),112)+’003′
函数fn_cdc_get_min_lsn可以帮我们查出改表的修改时间。
总结,除了使用简单的Sys.Tables函数以外,可以利用索引、change_tracking等技巧查询MSSQL中改表时间。此外,如果类型错误,可以考虑也用相关函数查找对应表类型,并根据给定表类型在其中进行查询。
相关文章