KB2689903 — FIX: при выполнении публикации с помощью веб-синхронизации для репликации слиянием, если значение столбца равно NULL, в SQL Server 2008 R2 или SQL Server 2012

Применимо к: SQL Server 2008 R2 EnterpriseSQL Server 2008 R2 DatacenterSQL Server 2008 R2 Developer

Корпорация Майкрософт распространяет исправления Microsoft SQL Server 2008 R2 или Microsoft SQL Server 2012 как один файл для загрузки. Поскольку исправления являются кумулятивными, каждый новый выпуск содержит все исправления и исправления для системы безопасности, которые были включены в предыдущую версию исправления для SQL Server 2008 R2 или SQL Server 2012.

Проблемы


Рассмотрим следующий сценарий.
  • Вы настраиваете публикацию слиянием, в которой используется веб-синхронизация в экземпляре Microsoft SQL Server 2008 R2 или экземпляре Microsoft SQL Server 2012.
  • В статье публикации есть таблица, содержащая вычисляемый столбец.
  • Инструкция UPDATE используется для обновления значения столбца на значение NULL на стороне подписчика. Инструкция UPDATE также обновляет несколько строк таблицы.Примечание.Столбец, значение которого Обновлено до NULL, находится справа от вычисляемого столбца.
  • Вы запускаете репликацию слиянием.
В этом сценарии не происходит конвергенция, в котором обновленные данные на подписчике не синхронизируются с издателем.

Решение


Сведения о накопительном пакете обновления

SQL Server 2008 R2 с пакетом обновления 2 (SP2)

Исправление для этой проблемы впервые выпущено в накопительном обновлении 1 для SQL Server 2008 R2 с пакетом обновления 2. Для получения дополнительных сведений о том, как получить этот накопительный пакет обновления, щелкните следующий номер статьи базы знаний Майкрософт:
2720425 Накопительный пакет обновления 1 для SQL Server 2008 R2 с пакетом обновления 2 (SP2)
Примечание. Поскольку сборки являются кумулятивными, каждый новый выпуск исправлений содержит все исправления и все исправления безопасности, которые были включены в предыдущий выпуск исправлений для SQL Server 2008 R2. Рекомендуется установить последнюю версию исправления, которая включает это исправление. Дополнительные сведения см. в следующей статье базы знаний Майкрософт:
2730301 Сборки SQL Server 2008 R2, выпущенные после выпуска SQL Server 2008 R2 с пакетом обновления 2 (SP2)

SQL Server 2012

Исправление для этой проблемы впервые выпущено в накопительном обновлении 2 для SQL Server 2012. Чтобы получить дополнительные сведения об этом накопительном пакете обновления, щелкните следующий номер статьи базы знаний Майкрософт:
2703275 Накопительный пакет обновления 2 (SP2) для SQL Server 2012
Примечание. Так как сборки являются кумулятивными, каждый новый выпуск исправлений содержит все исправления и все исправления безопасности, которые были включены в предыдущий выпуск исправлений для SQL Server 2012. Корпорация Microsoft рекомендует установить последнюю версию исправления, которая включает это исправление. Дополнительные сведения см. в следующей статье базы знаний Майкрософт:
2692828 Сборки SQL Server 2012, выпущенные после выпуска SQL Server 2012
Вы должны применить исправление SQL Server 2012 к установке SQL Server 2012.

SQL Server 2008 R2 с пакетом обновления 1 (SP1)

Исправление для этой проблемы впервые выпущено в накопительном обновлении 6. Для получения дополнительных сведений о том, как получить этот накопительный пакет обновления для SQL Server 2008 R2 с пакетом обновления 1 (SP1), щелкните следующий номер статьи базы знаний Майкрософт:
2679367 Накопительный пакет обновления 6 для SQL Server 2008 R2 с пакетом обновления 1 (SP1)
Примечание. Поскольку сборки являются кумулятивными, каждый новый выпуск исправлений содержит все исправления и все исправления системы безопасности, которые были включены в предыдущий выпуск исправлений для SQL Server 2008 R2 с пакетом обновления 1 (SP1). Рекомендуется установить последнюю версию исправления, которая включает это исправление. Дополнительные сведения см. в следующей статье базы знаний Майкрософт:
2567616 Сборки SQL Server 2008 R2, выпущенные после выпуска SQL Server 2008 R2 с пакетом обновления 1 (SP1)

Обходное решение


Чтобы устранить эту ошибку, переместите вычисляемый столбец в конец таблицы в статье.

Статус


Корпорация Майкрософт подтверждает наличие этой проблемы в своих продуктах, которые перечислены в разделе "Применяется к".