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

修复: 不正确的结果或违反约束的选择或 DML 语句运行时使用 row_number 函数,并行执行计划在 SQL Server 2008 年

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

点击这里察看该文章的英文版: 2589980

Microsoft 将 Microsoft SQL Server 2008年修补程序分发作为一个可下载的文件。修补程序是累积性的因为每个新版本包含的所有修补程序和所有安全修补程序包含以前的 SQL Server 2008 修补程序版本。
症状
请考虑以下情形:
  • 在运行使用并行查询 row_number Microsoft SQL Server 2008年中的函数。
  • 您尝试通过使用子查询内的运行查询 选择 语句或数据操作语言 (DML) 语句。
在这种情况下,您会遇到以下问题之一:
  • 如果您运行该查询中的,则会收到不正确的结果选择 语句多次。
  • 表可能包含不正确的数据,如果 DML 语句内运行的查询。如果表中的约束,该语句可能无法与约束冲突。

    例如, 插入 语句可能会失败,将主键冲突发生错误如果表具有主键。


请注意 这些问题可能会发生下列情况之一:
  • 设置 MAXDOP 查询提示选项的值是大于 2.
  • 设置 最大程度的并行度 选项的值是大于 2 在服务器配置。

解决方案
要解决此问题,请获取最新的 service pack,SQL Server 2008 年。有关详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:

968382 如何获取最新的 service pack,SQL Server 2008 年
替代方法
要解决此问题,请使用下列方法之一:
  • 如果您应用了下列更新之一,请启用 4134 跟踪标志:
    • 为 SQL Server 或更高版本累积更新包 SQL Server 2008 年的累积更新包 6
    • 累积更新包 2 的 SQL Server 2008 Service Pack 1 (SP1) 或更高版本累积更新包的 SQL Server 2008 SP1


    有关如何启用跟踪标记的详细信息,请访问下面的 MSDN 网站:
  • 引用的 Microsoft 知识库文章 970198 中的"替代方法"部分。

    有关详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
    970198 修复: 错误的结果时收到运行 SQL Server 2008年中使用 row_number 函数的查询

警告:本文已自动翻译

属性

文章 ID:2589980 - 上次审阅时间:08/22/2011 23:08:00 - 修订版本: 1.0

Microsoft SQL Server 2008 Developer, Microsoft SQL Server 2008 Enterprise, Microsoft SQL Server 2008 Enterprise Evaluation, Microsoft SQL Server 2008 Express, Microsoft SQL Server 2008 Express with Advanced Services, Microsoft SQL Server 2008 Service Pack 1, Microsoft SQL Server 2008 Service Pack 2, Microsoft SQL Server 2008 Standard, Microsoft SQL Server 2008 Standard Edition for Small Business, Microsoft SQL Server 2008 Web, Microsoft SQL Server 2008 Workgroup

  • kbqfe kbfix kbexpertiseadvanced kbsurveynew kbmt KB2589980 KbMtzh
反馈