Репликация изменений схемы

Область применения: SQL Server Управляемый экземпляр SQL Azure

В этом разделе описывается репликация изменений схемы в SQL Server с помощью SQL Server Management Studio или Transact-SQL.

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

  • ALTER TABLE

  • ALTER VIEW

  • ALTER PROCEDURE

  • ALTER FUNCTION

  • ALTER TRIGGER

Ограничения и запреты

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

Использование среды SQL Server Management Studio

Если вы не хотите реплицировать изменения схемы для публикации, отключите репликацию изменений схемы в диалоговом окне "Свойства публикации — <публикация> ". Дополнительные сведения о доступе к этому диалоговому окну см. в разделе Просмотр и изменение свойств публикации.

Отключение репликации изменений схемы

  1. На странице Параметры подписки диалогового окна Свойства публикации — <Публикация> установите для свойства Реплицировать изменения схемы значение False.

  2. Нажмите ОК.

    Для распространения только определенных изменений схемы перед изменением схемы установите свойство в True , а после выполнения изменений установите его в False . И наоборот, для распространения всех изменений схемы, за исключением данного изменения, перед изменением схемы установите свойство в False , а после выполнения изменений установите его в True .

Использование Transact-SQL

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

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

  1. На сервере-издателе в базе данных публикаций выполните sp_addpublication (Transact-SQL), указав значение 0 для @replicate_ddl. Дополнительные сведения см. в разделе Create a Publication.

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

  1. На сервере-издателе в базе данных публикаций выполните sp_addmergepublication (Transact-SQL), указав значение 0 для @replicate_ddl. Дополнительные сведения см. в разделе Create a Publication.

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

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

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

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

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

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

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

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