你目前正处于脱机状态,正在等待 Internet 重新连接

修复: 较差的性能可能会发生在执行包含 SQL Server 2005年和 SQL Server 2008年同一列中的多个自联接操作的查询时

Extended support for SQL Server 2005 ends on April 12, 2016

If you are still running SQL Server 2005 after April 12, 2016, you will no longer receive security updates and technical support. We recommend upgrading to SQL Server 2014 and Azure SQL Database to achieve breakthrough performance, maintain security and compliance, and optimize your data platform infrastructure. Learn more about the options for upgrading from SQL Server 2005 to a supported version here.

注意:这篇文章是由无人工介入的微软自动的机器翻译软件翻译完成。微软很高兴能同时提供给您由人工翻译的和由机器翻译的文章, 以使您能使用您的语言访问所有的知识库文章。然而由机器翻译的文章并不总是完美的。它可能存在词汇,语法或文法的问题,就像是一个外国人在说中文时总是可能犯这样的错误。虽然我们经常升级机器翻译软件以提高翻译质量,但是我们不保证机器翻译的正确度,也不对由于内容的误译或者客户对它的错误使用所引起的任何直接的, 或间接的可能的问题负责。

点击这里察看该文章的英文版: 2451540
Microsoft 将分发 Microsoft SQL Server 2005年和 Microsoft SQL Server 2008年修补程序修补了一个可下载的文件。修补程序是累积性的因为每个新版本包含的所有修补程序和所有安全修补程序包含在以前的 SQL Server 2005年和 Microsoft SQL Server 2008年的修补都程序版本。
症状
请考虑下面的方案。您可以在 Microsoft SQL Server 2005 年有一个数据库。在运行包含数据库中表的相同列上的多个自联接操作的查询。例如对于当您尝试在数据库中使用数据的多维数据集,可能会执行一个查询,其中包含相同的列上的多个自联接操作。在这种情况下可能会出现性能不佳,和该查询可能会花费很长时间才能执行。
原因
由于该查询中的基数估计不正确,则会出现此问题。被认为是几个自联接操作后,查询优化器可能估计为 1 的另一个联接运算符的行数。因此,查询优化器选择低效的查询计划,并且可能会出现性能下降。
解决方案

累积更新信息

SQL Server 2008 Service Pack 1

此问题的修补程序是首次推出累积更新 12 中的 SQL Server 2008 Service Pack 1。有关此累积更新包的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
2467236累积更新包 12 个 SQL Server 2008 Service Pack 1
请注意由于生成是累积性的每个新修补程序版本包含的所有修补程序和所有安全修补程序包含以前的 SQL Server 2008 修补都程序版本。Microsoft 建议您考虑应用最新的修补程序版本包含此修复程序。更多的信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
970365SQL Server 2008年版本发布后发布 SQL Server 2008 Service Pack 1
Microsoft SQL Server 2008年修补程序会创建特定的 SQL Server service pack。您必须将 SQL Server 2008 Service Pack 1 修补程序应用于 SQL Server 2008 Service Pack 1 的安装。默认状态下,SQL Server service pack 中提供的任何修补程序包含在下一步的 SQL Server service pack。


在安装此累积更新包后,您必须启用跟踪标志4199.若要这样做,您可以添加该-T4199启动参数,或者您可以使用该dbcc traceon(4199)对于单个会话的语句。


SQL Server 2005 Service Pack 3此问题的修补程序是累积更新 13 个 SQL Server 2005 Service Pack 3 中首次推出。有关此累积更新包的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
2438344累积更新包 13 个 SQL Server 2005 Service Pack 3
请注意由于生成是累积性的每个新修补程序版本包含的所有修补程序和所有安全修补程序附带以前的 SQL Server 2005年修补都程序版本。Microsoft 建议您考虑应用最新的修补程序版本包含此修复程序。更多的信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
960598SQL Server 2005年版本发布后发布 SQL Server 2005 Service Pack 3
Microsoft SQL Server 2005年修补程序会创建特定的 SQL Server service pack。必须将 SQL Server 2005 Service Pack 3 修补程序应用到安装的 SQL Server 2005 Service Pack 3。默认状态下,SQL Server service pack 中提供的任何修补程序包含在下一步的 SQL Server service pack。


在安装此累积更新包后,您必须启用跟踪 标志4199.若要这样做,您可以添加该-T4199启动参数,或者您可以使用该dbcc traceon(4199)对于单个会话的语句。
状态
Microsoft 已经确认这是在"适用于"一节中列出的 Microsoft 产品中的问题。
参考
SQL Server 为增量处理模型的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
935897一个增量服务模型是可从 SQL Server 小组提供的报告的问题的修补程序
有关命名架构的 SQL Server 更新的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
822499对于 Microsoft SQL Server 软件更新程序包的新命名方案
有关软件更新术语的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
824684用于描述 Microsoft 软件更新的标准术语的说明

Warning: This article has been translated automatically

属性

文章 ID:2451540 - 上次审阅时间:02/14/2011 09:13:00 - 修订版本: 3.0

Microsoft SQL 2005 Server Workgroup, Microsoft SQL Server 2005 Evaluation Edition, Microsoft SQL Server 2005 Standard Edition, Microsoft SQL Server 2005 Express Edition, Microsoft SQL Server 2005 Enterprise Edition for Itanium Based Systems, Microsoft SQL Server 2005 Enterprise X64 Edition, Microsoft SQL Server 2005 Developer Edition, Microsoft SQL Server 2008 Developer, Microsoft SQL Server 2008 Enterprise, Microsoft SQL Server 2008 Express, Microsoft SQL Server 2008 Standard, Microsoft SQL Server 2008 Workgroup

  • kbqfe kbfix kbexpertiseadvanced kbsurveynew kbmt KB2451540 KbMtzh
反馈