使用 Microsoft 登录
登录或创建帐户。
你好,
使用其他帐户。
你有多个帐户
选择要登录的帐户。

Microsoft 将 Microsoft SQL Server 2008 SP2 或 Microsoft SQL Server 2008 R2 修补程序分发为一个可下载文件。 由于修补程序是累积的,因此每个新版本都包含以前的 SQL Server 2008 SP2 或 SQL Server 2008 R2 版本修补程序所包含的所有修补程序和所有安全修补程序。

症状

请考虑以下情况:

  • 在 Microsoft SQL Server 2008 或 Microsoft SQL Server 2008 R2 中有两个索引的表或视图。 第一个索引在其后有一个 AFTER 触发器。 但是,第二个索引在它上面没有 AFTER 触发器。

  • 第二个索引中的某些记录包含行的版本信息。 例如,你以前已启用快照隔离功能以启用行版本。

  • 您尝试针对表或视图运行 DML 查询。

在这种情况下,你可能会遇到下列问题之一:

  • 出现声明失败,并且 SQL Server 错误日志中记录了以下错误:

    日期时间spid # 错误:17066,严重性:16,状态:1。日期时间Spid # SQL Server Assertion: File: Pageref,line = 1332 失败断言 = "0 = = pageFull"。 此错误可能与计时有关。 如果再次运行该语句后,该错误仍然存在,请使用 DBCC CHECKDB 检查数据库的结构完整性,或者重新启动服务器以确保内存中的数据结构未损坏。日期时间spid # 错误:3624,严重性:20,状态:1。> spid #系统断言检查失败的日期时间。 有关详细信息,请查看 SQL Server 错误日志。 通常,断言失败由软件错误或数据损坏导致。 若要检查数据库是否损坏,请考虑运行 DBCC CHECKDB。 如果你同意在安装期间将转储发送到 Microsoft,则会向 Microsoft 发送一个小转储。 从 Microsoft 的最新服务包或从技术支持部门获取的 QFE 中可能提供更新。

  • 查询返回不正确的结果。

  • 出现数据损坏问题。

原因

出现此问题的原因是 SQL Server 查询优化程序存在缺陷。 当运行生成触发器的 DML 查询时,设置了不正确的行版本标志,SQL Server 存储引擎使用旧的行版本信息。 因此,将出现 "症状" 部分中所述的问题。

解决方案

累积更新信息

SQL Server 2008 R2

此问题的修补程序首次在累积更新10中发布。有关如何为 SQL Server 2008 R2 获取此累积更新包的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:

2591746 SQL Server 2008 R2 的累积更新包10 注意 由于这些版本是累积的,因此每个新的修复版本都包含了以前的 SQL Server 2008 R2 修补程序版本附带的所有修补程序和所有安全修补程序。 我们建议你考虑应用包含此修补程序的最新修复版本。 有关更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:

981356 发布 SQL Server 2008 R2 后发布的 SQL Server 2008 R2 版本

SQL Server 2008 R2 Service Pack 1

此问题的修补程序首次在 SQL Server 2008 R2 Service Pack 1 的累积更新3中发布。有关如何获取此累积更新包的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:

2591748 SQL Server 2008 R2 Service Pack 1 的累积更新包3注意 由于这些版本是累积的,因此每个新的修复版本都包含了以前的 SQL Server 2008 R2 修补程序版本附带的所有修补程序和所有安全修补程序。 我们建议你考虑应用包含此修补程序的最新修复版本。 有关更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:

2567616 在发布 SQL Server 2008 R2 Service Pack 1 之后发布的 SQL Server 2008 R2 版本

SQL Server 2008 Service Pack 2 (SP2)累积更新包6

此问题的修补程序首次在累积更新6中发布。有关如何为 SQL Server 2008 Service Pack 2 获取此累积更新包的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:

2582285 SQL Server 2008 的累积更新包 6 Service Pack 2注意 由于这些版本是累积的,因此每个新的修复版本都包含了以前的 SQL Server 2008 Service Pack 2 修复版本附带的所有修补程序和所有安全修补程序。 我们建议你考虑应用包含此修补程序的最新修复版本。 有关更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:

2402659 发布 SQL Server 2008 Service Pack 2 后发布的 SQL Server 2008 版本

状态

Microsoft 已确认这是在“适用范围”部分中列出的 Microsoft 产品存在的问题。

需要更多帮助?

需要更多选项?

了解订阅权益、浏览培训课程、了解如何保护设备等。

社区可帮助你提出和回答问题、提供反馈,并听取经验丰富专家的意见。

此信息是否有帮助?

你对语言质量的满意程度如何?
哪些因素影响了你的体验?
按“提交”即表示你的反馈将用于改进 Microsoft 产品和服务。 你的 IT 管理员将能够收集此数据。 隐私声明。

谢谢您的反馈!

×