Проблемы
Рассмотрим следующий сценарий.
-
Вы создаете таблицу с первичным ключом и добавляете в нее несколько строк в Microsoft SQL Server 2019 или 2017.
-
Вы добавляете столбец с ограничением по умолчанию и изменяете первичный ключ, чтобы включить новый столбец.
-
Для этой таблицы создается транзакционная публикация и подписка.
В этом сценарии агент распространения сбоем при попытке применить UPDATE или DELETE к подписчику в строках, которые существовали перед добавлением нового столбца. Кроме того, появляется следующее сообщение об ошибке 20598:
Строка не найдена на подписчике при применении реплицированной команды UPDATE для таблицы TableName с первичными ключами: (null)
Решение
Эта проблема устранена в следующих накопительных обновлениях для SQL Server:
Каждое новое накопительное обновление для SQL Server содержит все исправления и исправления безопасности, которые были в предыдущей сборке. Рекомендуется установить последнюю сборку для своей версии SQL Server:
Статус
Корпорация Майкрософт подтверждает наличие этой проблемы в своих продуктах, которые перечислены в разделе "Применяется к".
Ссылки
Сведения о терминологии , которую корпорация Майкрософт использует для описания обновлений программного обеспечения.