1

我试图确定一个 proc 执行了多少次。

当我按计划句柄搜索时,我在 dm_exec_cached_plans 中找到了一条记录,但在 dm_exec_query_stats 中没有。我能找到的所有文档都表明,如果记录在 dm_exec_cached_plans 中,那么它应该始终在 dm_exec_query_stats 中有相应的记录。

有谁知道这是不正确的情况?

4

2 回答 2

1

你在哪里读到的——如果一条记录在 dm_exec_cached_plans 中,那么它应该总是在 dm_exec_query_stats 中有相应的记录?
实际上dm_exec_cached_plans在计划缓存中对每个编译计划都有记录,并且dm_exec_query_stats在相应的缓存计划中可以对每个查询语句都有记录。dm_exec_query_stats对于缓存对象类型“Parse Tree”或“CLR Compiled Proc”的缓存计划或系统存储过程、即席查询、预准备语句等对象,可以为空。

于 2012-09-28T17:10:09.360 回答
0

使用 sys.dm_exec_procedure_stats 怎么样?

请参阅http://msdn.microsoft.com/en-us/library/cc280701%28v=sql.100%29.aspx

于 2012-09-29T15:13:20.223 回答