Как выполнить репликацию изменений схемы (программирование репликации на языке Transact-SQL)
Если в опубликованную статью внести следующие изменения схемы, они по умолчанию распространяются на подписчики Microsoft SQL Server.
ALTER TABLE
ALTER VIEW
ALTER PROCEDURE
ALTER FUNCTION
ALTER TRIGGER
Можно использовать хранимые процедуры репликации для указания, следует ли реплицировать эти изменения схемы. Используемая хранимая процедура зависит от типа публикации.
Примечание |
---|
Команда ALTER TABLE DROP COLUMN всегда реплицируется на все подписки, секции которых содержат удаляемые столбцы, независимо от значения параметра @replicate_ddl. |
Создание публикации моментальных снимков или публикации транзакций без репликации изменений схемы
- В базе данных публикации на издателе выполните процедуру sp_addpublication (Transact-SQL), указав в параметре @replicate_ddl значение 0. Дополнительные сведения см. в разделе Как создать публикацию (программирование репликации на языке Transact-SQL).
Создание публикации слиянием без репликации изменений схемы
- В базе данных публикации на издателе выполните процедуру sp_addmergepublication (Transact-SQL), указав в параметре @replicate_ddl значение 0. Дополнительные сведения см. в разделе Как создать публикацию (программирование репликации на языке Transact-SQL).
Временное отключение репликации изменений схемы для публикации моментальных снимков или публикации транзакций
Для публикации с репликацией изменений схемы выполните процедуру sp_changepublication (Transact-SQL), указав в параметре @property значение replicate_ddl, а в параметре @value — значение 0.
Выполните команду DDL на опубликованном объекте.
Заново включите репликацию изменений схемы, выполнив процедуру sp_changepublication (Transact-SQL) и указав в параметре @property значение replicate_ddl, а в параметре @value — значение 1 (необязательно).
Временное отключение репликации изменений схемы для публикации слиянием
Для публикации с репликацией изменений схемы выполните процедуру sp_changemergepublication (Transact-SQL), указав в параметре @property значение replicate_ddl, а в параметре @value — значение 0.
Выполните команду DDL на опубликованном объекте.
Заново включите репликацию изменений схемы, выполнив процедуру sp_changemergepublication (Transact-SQL) и указав в параметре @property значение replicate_ddl, а в параметре @value — значение 1 (необязательно).