gpt4 book ai didi

sql - SQL 数据库是否有等效的 "Code Coverage"?

转载 作者:行者123 更新时间:2023-12-02 23:25:49 25 4
gpt4 key购买 nike

我有一个数据库,其中有许多已使用的表,以及许多不再使用的表。虽然我可以手动对每个表进行排序以查看它们是否仍在使用,但这将是一项繁琐的任务。是否有任何软件/隐藏功能可以在 SQL Server/Oracle 数据库上使用,该功能会返回诸如“过去一个月未使用表 x、y、z”“表 a、b、c 已被使用”之类的信息 17今天的次数”?或者可能是一种按“上次修改/选择日期”对表格进行排序的方法?

或者有更好的方法来做到这一点吗?谢谢

编辑:我在执行“SELECT * FROM sys.tables ORDER BYmodify_date desc”时发现了一个“modify_date”列,但这似乎只跟踪对表结构的修改,而不是其内容。

最佳答案

spt_values 替换为您感兴趣的表名,查询将给出最后一次使用它的时间以及它的使用对象

从这里:Finding Out How Many Times A Table Is Being Used In Ad Hoc Or Procedure Calls In SQL Server 2005 And 2008

SELECT * FROM(SELECT COALESCE(OBJECT_NAME(s2.objectid),'Ad-Hoc') AS ProcName,execution_count,
(SELECT TOP 1 SUBSTRING(s2.TEXT,statement_start_offset / 2+1 ,
( (CASE WHEN statement_end_offset = -1
THEN (LEN(CONVERT(NVARCHAR(MAX),s2.TEXT)) * 2)
ELSE statement_end_offset END) - statement_start_offset) / 2+1)) AS sql_statement,
last_execution_time
FROM sys.dm_exec_query_stats AS s1
CROSS APPLY sys.dm_exec_sql_text(sql_handle) AS s2 ) x
WHERE sql_statement like '%spt_values%' -- replace here
AND sql_statement NOT like 'SELECT * FROM(SELECT coalesce(object_name(s2.objectid)%'
ORDER BY execution_count DESC

请记住,如果您重新启动盒子,这将被清除

关于sql - SQL 数据库是否有等效的 "Code Coverage"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5586644/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com