KB2681514-修复:当空字符串插入到 SQL Server 2008 R2 中的事务复制发布中的表的 XML 列中时,复制日志读取器代理崩溃。

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

症状

请考虑以下情况:

  • 在 Microsoft SQL Server 2008 R2 实例上创建事务复制发布。

  • 发布包含具有 XML 列的表。

  • 初始化发布时,表中发生下列事件之一:

    • 插入的行中包含 XML 列中的空字符串。

    • 通过在 XML 列中插入一个空字符串来更新行。

在这种情况下,复制日志读取器代理崩溃,复制失败。注意 如果 XML 列的值为 NULL,则不会发生此问题。

解决方案

累积更新信息

SQL Server 2008 R2 Service Pack 1

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

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

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

解决方法

要解决此问题,请遵循以下指南:

  • 不要在 XML 列中插入包含空字符串的行。

  • 不要通过在 XML 列中插入空字符串来更新行。

状态

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

参考

有关复制日志读取器代理的详细信息,请访问以下 Microsoft 开发人员网络(MSDN)网站:

有关复制日志读取器代理的常规信息

需要更多帮助?

扩展你的技能
了解培训
抢先获得新功能
加入 Microsoft 内部人员

此信息是否有帮助?

谢谢您的反馈意见!

谢谢你的反馈! 可能需要转接到 Office 支持专员。

×