修补程序: 在合并的分区表,并提供数据压缩选项启用,并再重新分区表之后,数据压缩选项处于禁用状态上一个 SQL Server 2008年中的表分区

文章翻译 文章翻译
文章编号: 974262 - 查看本文应用于的产品
Microsoft 将 Microsoft SQL Server 2008 修补程序作为一个可下载文件进行分发。修补程序是累积性的因为每个新版本包含的所有修补程序和了上一个 SQL Server 2008年中包含的所有安全修补程序的修补都程序版本。
展开全部 | 关闭全部

本文内容

症状

请考虑以下情形:
  • 对分区函数用于将表拆分到 Microsoft SQL Server 2008年中的两个分区。
  • 对表分区启用数据压缩选项。
  • 将两个分区合并到单个分区中。
  • 执行要使之无效的表的元数据缓存的以下操作之一:
    • 您运行DBCC FREESYSTEMCACHE('ALL')语句。
    • 在回滚表上的执行DDL操作。
  • 您可以使用的分区函数将表拆分成两个分区。
在这种情况下,新的分区表禁用数据压缩选项。您可以运行下面的语句来获取表分区的数据压缩选项:
SELECT OBJECT_NAME(object_id), index_id, partition_number, rows, data_compression_desc
FROM sys.partitions
WHERE object_id = object_id('<obj_id>')
ORDER BY partition_number
注意<obj_ID></obj_ID> 表示表的对象 ID。

此外,如果已禁用克隆表中启用数据压缩选项的数据压缩选项的新表分区切换时,您会收到下面的错误消息:
消息 11406,16,状态 1,第 12 行级
改变表格 SWITCH 语句失败。源分区和目标分区具有不同的值为 DATA_COMPRESSION 选项。

原因

已启用数据压缩选项的表分区合并时,SQL Server 数据库引擎将不会更新数据压缩设置的表的元数据。
注意数据压缩设置的元数据存储在磁盘上。

在同一时间,缓存的表的元数据包含表的数据压缩设置正确的元的数据。表元数据的缓存失效,由通过从磁盘表数据压缩设置的元数据填充缓存的表的元数据。由于表存储在磁盘上的数据压缩设置的元数据不正确,就会发生"症状"一节中描述的问题。

解决方案

SQL Server 2008

重要提示如果您运行的 Microsoft SQL Server 2008年的发布版本,则必须使用此修复程序。

累积更新 7 中首次发布此问题的修补程序。有关如何获取此累积更新包,SQL Server 2008 年的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
973601 SQL Server 2008 的累积更新包 7
注意版本具有累积性的因为每个新修补程序版本包含的所有修补程序和修复了上一个 SQL Server 2008年中包含的所有安全修复都程序的版本。我们建议您考虑将应用了最新的修补程序版本包含此修复程序。有关详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
956909 SQL Server 2008年生成 SQL Server 2008年发布后发布

SQL Server 2008 Service Pack 1

重要提示如果您运行的 SQL Server 2008 Service Pack 1,则必须使用此修复程序。

此问题的修补程序首次对 SQL Server 2008 Service Pack 1 发布累积更新 4 中。有关此累积更新包的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
973602 累积更新包 4 个 SQL Server 2008 Service Pack 1
注意版本具有累积性的因为每个新修补程序版本包含的所有修补程序和修复了上一个 SQL Server 2008年中包含的所有安全修复都程序的版本。Microsoft 建议您考虑应用包含此修补程序的最新修复程序版本。有关详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
970365 SQL Server 2008年生成在 SQL Server 2008 Service Pack 1 月发布之后发布
为特定的 SQL Server 服务包创建 Microsoft SQL Server 2008年的修复程序。必须将一个 SQL Server 2008 Service Pack 1 修补程序应用到安装的 SQL Server 2008 Service Pack 1。默认情况下,任何 SQL Server service pack 中提供的修补程序包含在下一次 SQL Server service pack。

状态

Microsoft 已经确认这是在"适用于"一节中列出的 Microsoft 产品中的问题。

参考

有关如何进行切换表分区的详细信息,请访问下面的 Microsoft 开发人员网络 (MSDN) Web 站点:
http://msdn.microsoft.com/en-us/library/ms190273.aspx
针对 SQL Server 的增量服务模式的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
935897 可从 SQL Server 团队获取增量服务模型,以提供所报告问题的修补程序。


有关命名 SQL Server 更新架构的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
822499 对于 Microsoft SQL Server 软件更新程序包的新命名方案


有关软件更新术语的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
824684用于描述 Microsoft 软件更新的标准术语的说明

属性

文章编号: 974262 - 最后修改: 2013年9月29日 - 修订: 2.0
这篇文章中的信息适用于:
  • Microsoft SQL Server 2008 Workgroup
  • Microsoft SQL Server 2008 Standard
  • Microsoft SQL Server 2008 Developer
  • Microsoft SQL Server 2008 Enterprise
关键字:?
kbsurveynew kbexpertiseadvanced kbqfe kbfix kbmt KB974262 KbMtzh
机器翻译
重要说明:本文是由 Microsoft 机器翻译软件进行的翻译并可能由 Microsoft 社区通过社区翻译机构(CTF)技术进行后期编辑,或可能是由人工进行的翻译。Microsoft 同时向您提供机器翻译、人工翻译及社区后期编辑的文章,以便对我们知识库中的所有文章以多种语言提供访问。翻译的文章可能存在词汇、句法和/或语法方面的错误。Microsoft 对由于内容的误译或客户对内容的使用所导致的任何不准确、错误或损失不承担责任。
点击这里察看该文章的英文版: 974262
Microsoft和/或其各供应商对于为任何目的而在本服务器上发布的文件及有关图形所含信息的适用性,不作任何声明。 所有该等文件及有关图形均"依样"提供,而不带任何性质的保证。Microsoft和/或其各供应商特此声明,对所有与该等信息有关的保证和条件不负任何责任,该等保证和条件包括关于适销性、符合特定用途、所有权和非侵权的所有默示保证和条件。在任何情况下,在由于使用或运行本服务器上的信息所引起的或与该等使用或运行有关的诉讼中,Microsoft和/或其各供应商就因丧失使用、数据或利润所导致的任何特别的、间接的、衍生性的损害或任何因使用而丧失所导致的之损害、数据或利润不负任何责任。

提供反馈

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com