отключить отслеживание операций удаления для статей публикации слиянием (программирование репликации на языке Transact-SQL)
![]() |
---|
В будущей версии Microsoft SQL Server этот компонент будет удален. Избегайте использования этого компонента в новых разработках и запланируйте изменение существующих приложений, в которых он применяется. |
По умолчанию репликация слиянием производит синхронизацию команд DELETE между издателем и подписчиком. Репликация слиянием позволяет извлекать строки из базы данных подписки даже в том случае, если они были удалены из публикации (и наоборот). При создании новой статьи можно отключить выполнение команд DELETE программным путем, либо сделать это позже с помощью хранимых процедур репликации.
![]() |
---|
Включение этой функции приведет к потере конвергенции, то есть возникнет несоответствие данных, содержащихся на подписчике и на издателе. Потребуется реализация собственного механизма очистки удаленных строк. |
Отключение обработки команд удаления для новой статьи слияния
В базе данных публикации на издателе, выполните процедуру изменения задержки и проверки соединений для репликации транзакций (sp_addmergearticle (Transact-SQL)). В параметре @delete_tracking укажите значение false. Дополнительные сведения см. в разделе Определение статьи.
Примечание
Если исходная таблица для статьи уже опубликована в другой публикации, значение delete_tracking должно быть одинаковым для обеих статей.
Отключение обработки команд удаления для существующих статей слияния
Чтобы определить, включена ли компенсация ошибок для статьи, выполните хранимую процедуру sp_helpmergearticle (Transact-SQL) и в результирующем наборе проверьте значение параметра delete_tracking. Если это значение равно 0, то команды удаления уже не обрабатываются.
Если на шаге 1 получено значение 1, то в базе данных публикации на издателе необходимо выполнить хранимую процедуру sp_changemergearticle (Transact-SQL). В параметре @property укажите значение delete_tracking, а в параметре @value — значение false.
Примечание
Если исходная таблица для статьи уже опубликована в другой публикации, значение delete_tracking должно быть одинаковым для обеих статей.
См. также
Основные понятия
Оптимизация производительности репликации слиянием с помощью отслеживания условного удаления