Поделиться через


Отключение проверочных ограничений для репликации

Отключить проверочные ограничения в SQL Server 2012 можно при помощи среды Среда SQL Server Management Studio или Transact-SQL. Также можно явно отключить проверочные ограничения при репликации, что может оказаться полезным при публикации данных от более ранней версии SQL Server.

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

Если таблица опубликована с использованием репликации, то проверочные ограничения для операций, выполняемых агентами репликации, автоматически отключаются. Когда агент репликации на подписчике выполняет вставку, обновление или удаление, ограничение не проверяется. Если эту же операцию выполняет пользователь, ограничение проверяется. Ограничение отключено для агента репликации по той причине, что оно уже проверено на издателе при выполнении исходной операции вставки, обновления или удаления данных. Дополнительные сведения см. в разделе Указание параметров схемы.

В этом разделе

  • Перед началом работы выполните следующие действия.

    Безопасность

  • Для отключения проверочного ограничения при репликации используется:

    Среда SQL Server Management Studio

    Transact-SQL

Перед началом

Безопасность

Разрешения

Требуется разрешение ALTER на таблицу.

Значок стрелки, используемый со ссылкой «В начало»[Top]

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

Отключение проверочных ограничений при репликации

  1. Разверните в обозревателе объектов таблицу с проверочным ограничением, которое нужно изменить, а затем разверните папку Ограничения.

  2. Щелкните правой кнопкой мыши проверочное ограничение, которое нужно изменить, и выберите пункт Изменить.

  3. В диалоговом окне Проверочные ограничения в разделе Конструктор таблиц выберите для параметра Включить использование для репликации значение Нет.

  4. Нажмите кнопку Закрыть.

Значок стрелки, используемый со ссылкой «В начало»[Top]

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

Отключение проверочных ограничений при репликации

  1. В обозревателе объектов установите соединение с экземпляром компонента Компонент Database Engine.

  2. На стандартной панели выберите пункт Создать запрос.

  3. Скопируйте следующий пример в окно запроса и нажмите кнопку Выполнить. В примере создается таблица со столбцом IDENTITY и ограничением CHECK. Затем в таблице удаляется это ограничение и снова создается с указанием предложения NOT FOR REPLICATION.

    USE AdventureWorks2012;
    GO
    CREATE TABLE dbo.doc_exd (column_a int IDENTITY (1,1) 
    CONSTRAINT exd_check CHECK (column_a > 1)) 
    
    ALTER TABLE dbo.doc_exd 
    DROP CONSTRAINT exd_check; 
    GO
    ALTER TABLE dbo.doc_exd  
    ADD CONSTRAINT exd_check CHECK NOT FOR REPLICATION (column_a > 1);
    

Дополнительные сведения см. в разделе ALTER TABLE (Transact-SQL).

Значок стрелки, используемый со ссылкой «В начало»[Top]

См. также

Основные понятия

Указание параметров схемы