我正在执行
EXEC sp_recompile <tablename>
但我仍然看到为该表缓存的查询计划:
SELECT
CP.[objtype]
, CP.[cacheobjtype]
, CP.[size_in_bytes]
, CP.[refcounts]
, CP.[usecounts]
, ST.[text]
FROM
sys.dm_exec_cached_plans as CP
CROSS APPLY sys.dm_exec_sql_text (CP.[plan_handle]) as ST
WHERE
1 = 1
AND ST.[text] NOT LIKE '%dm_exec_cached_plans%'
AND ST.[text] LIKE '%<tablename>%'
ORDER BY
CP.[objtype]
为什么会发生这种情况?
我认为该计划刚刚失效,它将在下次执行时更新。如果该计划无效(或标记为重新编译),是否存在一种查找方法(可能在 DMV 中)。
任何帮助表示赞赏。