Как выполнить репликацию изменений схемы (программирование репликации на языке Transact-SQL)

Если в опубликованную статью внести следующие изменения схемы, они по умолчанию распространяются на подписчики Microsoft SQL Server.

  • ALTER TABLE

  • ALTER VIEW

  • ALTER PROCEDURE

  • ALTER FUNCTION

  • ALTER TRIGGER

Можно использовать хранимые процедуры репликации для указания, следует ли реплицировать эти изменения схемы. Используемая хранимая процедура зависит от типа публикации.

ПримечаниеПримечание

Команда ALTER TABLE DROP COLUMN всегда реплицируется на все подписки, секции которых содержат удаляемые столбцы, независимо от значения параметра @replicate_ddl.

Создание публикации моментальных снимков или публикации транзакций без репликации изменений схемы

Создание публикации слиянием без репликации изменений схемы

Временное отключение репликации изменений схемы для публикации моментальных снимков или публикации транзакций

  1. Для публикации с репликацией изменений схемы выполните процедуру sp_changepublication (Transact-SQL), указав в параметре @property значение replicate_ddl, а в параметре @value — значение 0.

  2. Выполните команду DDL на опубликованном объекте.

  3. Заново включите репликацию изменений схемы, выполнив процедуру sp_changepublication (Transact-SQL) и указав в параметре @property значение replicate_ddl, а в параметре @value — значение 1 (необязательно).

Временное отключение репликации изменений схемы для публикации слиянием

  1. Для публикации с репликацией изменений схемы выполните процедуру sp_changemergepublication (Transact-SQL), указав в параметре @property значение replicate_ddl, а в параметре @value — значение 0.

  2. Выполните команду DDL на опубликованном объекте.

  3. Заново включите репликацию изменений схемы, выполнив процедуру sp_changemergepublication (Transact-SQL) и указав в параметре @property значение replicate_ddl, а в параметре @value — значение 1 (необязательно).