Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/sql-server-2008/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
关于SQL事件探查器中SP:CacheHit事件的说明_Sql_Sql Server 2008_Caching_Stored Procedures_Entity Framework 4.1 - Fatal编程技术网

关于SQL事件探查器中SP:CacheHit事件的说明

关于SQL事件探查器中SP:CacheHit事件的说明,sql,sql-server-2008,caching,stored-procedures,entity-framework-4.1,Sql,Sql Server 2008,Caching,Stored Procedures,Entity Framework 4.1,我想澄清一下我对SQL事件探查器中“SP:CacheHit”事件的理解 是否可以安全地假设,每当针对存储过程的执行显示“SP:CacheHit”事件时,不会对数据库进行任何命中?我问这个问题的原因是因为我目前有一个查询(使用Entity Framework/LINQ),它从表中的4000行中选择一条随机记录 SQL Server是否真的缓存了我表中的4000条数据记录,因此任何后续查询都不会命中数据库 系列活动如下: RPC:启动 SP:CacheHit SP:StmtStarting SP:S

我想澄清一下我对SQL事件探查器中“SP:CacheHit”事件的理解

是否可以安全地假设,每当针对存储过程的执行显示“SP:CacheHit”事件时,不会对数据库进行任何命中?我问这个问题的原因是因为我目前有一个查询(使用Entity Framework/LINQ),它从表中的4000行中选择一条随机记录

SQL Server是否真的缓存了我表中的4000条数据记录,因此任何后续查询都不会命中数据库

系列活动如下:

  • RPC:启动
  • SP:CacheHit
  • SP:StmtStarting
  • SP:StmtCompleted-->这是我看到读取数和行计数的地方
  • RPC:Completed-->这是我看到读取数和行计数的地方

  • 我发现这很有用,这在某种程度上澄清了我的理解,但我的一位同行专家的确认将非常有用。

    这只是意味着SP本身在执行计划缓存中被找到。这意味着不需要重新编译SP


    在您的示例中,从第3行开始,显示正在查询数据库本身以完成查询。

    当找不到计划时,您将看到
    SP:Recompile
    +1.