Microsoft 发布 Microsoft SQL Server 2005、Microsoft SQL Server 2008 或 Microsoft SQL Server 2008 R2 修复为一个可下载的文件。由于修补程序是累积的,因此每个新版本都包含以前 SQL Server 2005、SQL Server 2008 或 SQL Server 2008 R2 修复版本附带的所有修补程序和所有安全修补程序。本文还适用于以下产品:

  • Microsoft SQL Server 2008 R2 Integration Services (SSIS 2008 R2)

症状

当 microsoft sql server 2005 Integration Services (SSIS 2005)程序包的分布式事务处理 Microsoft SQL Server 2008 Integration Services (SSIS 2008)程序包或 Microsoft SQL Server 2008 R2 Integration Services (SSIS 2008 R2) packageis 终止时,SQL Server 日志文件中可能会错误地记录类似以下内容的成功消息:

信息:数据流任务中的0x4001100B:提交此容器启动的分布式事务。警告:数据流任务中的0x8004D019:该事务已被中止。SSIS 程序包 "<程序包名称> dtsx" 已完成:成功。

原因

出现此问题的原因是,在 SSIS 2005 或 SSIS 2008 中,分布式事务的 HRESULT 值映射到警告消息时出现错误。 生成警告时,不会停止任务或父容器。 因此,即使错误中止了分布式事务,程序包的执行也可能会错误地报告为 "成功"。

解决方案

累积更新信息

SQL Server 2008 R2 Service Pack 1

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

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

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

SQL Server 2008 R2

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

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

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

SQL Server 2008 Service Pack 2

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

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

2402659 发布 SQL Server 2008 Service Pack 2 后发布的 SQL Server 2008 版本 为特定 SQL Server service pack 创建 Microsoft SQL Server 2008 修补程序。 必须将 SQL Server 2008 Service Pack 2 修补程序应用到 SQL Server 2008 Service Pack 2 的安装。 默认情况下,SQL Server service pack 中提供的任何修补程序都包含在下一个 SQL Server service pack 中。

SQL Server 2008 Service Pack 1

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

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

970365 在发布 SQL Server 2008 Service Pack 1 之后发布的 SQL Server 2008 版本 为特定 SQL Server service pack 创建 Microsoft SQL Server 2008 修补程序。 必须将 SQL Server 2008 Service Pack 1 修补程序应用到 SQL Server 2008 Service Pack 1 的安装。 默认情况下,SQL Server service pack 中提供的任何修补程序都包含在下一个 SQL Server service pack 中。

SQL Server 2005 Service Pack 4

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

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

2485757 发布 SQL server 2005 Service Pack 4 后发布的 SQL Server 2005 版本 为特定 SQL Server service pack 创建 Microsoft SQL Server 2005 修补程序。 必须将 SQL Server 2005 Service Pack 4 修补程序应用于 SQL Server 2005 Service Pack 4 的安装。 默认情况下,SQL Server service pack 中提供的任何修补程序都包含在下一个 SQL Server service pack 中。

SQL Server 2005 Service Pack 3

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

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

960598 发布 SQL server 2005 Service Pack 3 后发布的 SQL Server 2005 版本 为特定 SQL Server service pack 创建 Microsoft SQL Server 2005 修补程序。 必须将 SQL Server 2005 Service Pack 3 修补程序应用到 SQL Server 2005 Service Pack 3 的安装。 默认情况下,SQL Server service pack 中提供的任何修补程序都包含在下一个 SQL Server service pack 中。

更多信息

安装累积更新程序包后,分布式事务的 HRESULT 值仍会显示 "症状" 部分中提及的警告消息。注意 分布式事务的 HRESULT 值的一个示例是 0x8004D019 XACT_E_ABORTED。此外,还会向事件序列中添加常规失败。 因此,除非通过使用 MaximumErrorCount、 FailParentOnFailure或 FailPackageOnFailure 属性的值阻止故障,否则父容器或任务将失败。已记录的事件序列中会添加以下消息之一:

  • DTS_I_COMMITTINGTRANSACTION = 0x4001100B = 提交由此容器启动的分布式事务。 或者,DTS_I_ABORTINGTRANSACTION = 0x4001100C = 中止当前分布式事务。

  • 警告:数据流任务中的0x8004D019:该事务已被中止。注意 此警告消息中的 HRESULT 值不限于 0x8004D019。 HRESULT值可能是以下网站中介绍的任何 Microsoft 分布式事务协调器(MSDTC)错误代码:

    有关 COM 错误代码的常规信息

  • DTS_E_GENERIC = 0xC0010014 = 发生了一个或多个错误。 在此之前,应该有更具体的错误说明错误的详细信息。 此消息用作遇到错误的函数的返回值。

状态

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

参考

有关 SQL Server 的增量服务模型的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:

935897 从 SQL Server 团队提供的增量服务模型可提供报告问题的修补程序有关 SQL Server 更新的命名架构的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:

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

824684 用于描述 Microsoft 软件更新的标准术语的说明

Need more help?

Expand your skills
Explore Training
Get new features first
Join Microsoft Insiders

Was this information helpful?

How satisfied are you with the translation quality?
What affected your experience?

Thank you for your feedback!

×