查询分析器VS.查询分析器读取,写入和持续时间差异

时间:2008-10-09 01:49:50

标签: sql-server sqlprofiler

我正在使用MS Sql Server 2000,对于在查询分析器中运行查询时的许多查询,在统计信息打开的情况下,统计信息选项卡中报告的数字与查询分析器中显示的值极为不同。当探查器和分析器同时运行时,一些查询报告在Analyzer中读取200次,而Profiler报告查询预先形成14000次读取。基于查询性能,在我看来,Profiler是正确的。但是,为什么两者之间存在如此大的差异?有没有其他人有相同的事情经历?

1 个答案:

答案 0 :(得分:1)

这两个实用程序做了不同的事情:

  • SQL Profiler 会监视正在发生的事情并对其进行报告。

  • 查询分析器查看SQL代码并确定如何运行它。

查询分析器使用统计信息来确定它将要执行的操作,但结果是一个行动计划,即使显示了统计信息。

SQL事件探测器事后报告发生的事情 - 它更准确,但具有追溯性。

如果发现查询分析器变得非常不准确,请尝试更新统计信息。