복제할 때 CHECK 제약 조건 해제Disable Check Constraints for Replication

이 항목은 다음에 적용됩니다. 예SQL Server(2016부터)예Azure SQL Database예Azure SQL Data Warehouse 예병렬 데이터 웨어하우스 THIS TOPIC APPLIES TO: yesSQL Server (starting with 2016)yesAzure SQL DatabaseyesAzure SQL Data Warehouse yesParallel Data Warehouse

SQL Server 2017SQL Server 2017 에서 SQL Server Management StudioSQL Server Management Studio 또는 Transact-SQLTransact-SQL을 사용하여 CHECK 제약 조건을 비활성화할 수 있습니다.You can disable check constraints in SQL Server 2017SQL Server 2017 by using SQL Server Management StudioSQL Server Management Studio or Transact-SQLTransact-SQL. 명시적으로 복제에 대한 CHECK 제약 조건을 비활성화할 수도 있습니다. 이는 이전 버전의 SQL ServerSQL Server에서 데이터를 게시하는 경우 유용할 수 있습니다.You can also explicitly disable check constraints for replication, which can be useful if you are publishing data from a previous version of SQL ServerSQL Server.

참고

테이블이 복제를 사용하여 게시된 경우 복제 에이전트에서 수행하는 작업에 대한 CHECK 제약 조건은 자동으로 비활성화됩니다.If a table is published using replication, check constraints are automatically disabled for operations performed by replication agents. 복제 에이전트가 구독자에서 삽입, 업데이트 또는 삭제를 수행하면 제약 조건이 확인되지 않지만 사용자가 삽입, 업데이트 또는 삭제를 수행하면 제약 조건이 확인됩니다.When a replication agent performs an insert, update, or delete at a Subscriber, the constraint is not checked; if a user performs an insert, update, or delete, the constraint is checked. 데이터가 원래 삽입, 업데이트 또는 삭제될 때 제약 조건이 게시자에 이미 확인되었으므로 복제 에이전트에 대한 제약 조건이 비활성화됩니다.The constraint is disabled for the replication agent because the constraint was already checked at the Publisher when the data was originally inserted, updated, or deleted. 자세한 내용은 스키마 옵션 지정을 참조하세요.For more information, see Specify Schema Options.

시작하기 전에Before You Begin

보안Security

사용 권한Permissions

테이블에 대한 ALTER 사용 권한이 필요합니다.Requires ALTER permission on the table.

SQL Server Management Studio 사용Using SQL Server Management Studio

복제할 때 CHECK 제약 조건을 비활성화하려면To disable a check constraint for replication

  1. 개체 탐색기에서 수정하려는 CHECK 제약 조건을 포함하는 테이블을 확장하고 제약 조건 폴더를 확장합니다.In Object Explorer, expand the table with the check constraint you want to modify, and then expand the Constraints folder.

  2. 수정할 CHECK 제약 조건을 마우스 오른쪽 단추로 클릭한 다음 수정을 클릭합니다.Right-click the check constraint you wish to modify and then click Modify.

  3. CHECK 제약 조건 대화 상자의 테이블 디자이너에서 복제에 적용 에 대해 아니요를 선택합니다.In the Check Constraints dialog box, under Table Designer, select a value of No for Enforce For Replication.

  4. 닫기를 클릭합니다.Click Close.

Transact-SQL 사용Using Transact-SQL

복제할 때 CHECK 제약 조건을 비활성화하려면To disable a check constraint for replication

  1. 개체 탐색기에서 데이터베이스 엔진Database Engine인스턴스에 연결합니다.In Object Explorer, connect to an instance of 데이터베이스 엔진Database Engine.

  2. 표준 도구 모음에서 새 쿼리를 클릭합니다.On the Standard bar, click New Query.

  3. 다음 예를 복사하여 쿼리 창에 붙여 넣고 실행을 클릭합니다.Copy and paste the following example into the query window and click Execute. 이 예에서는 IDENTITY 열이 있는 테이블과 테이블에 대한 CHECK 제약 조건을 만듭니다.The example creates a table with an IDENTITY column and a CHECK constraint on the table. 그런 다음 제약 조건을 삭제하고 NOT FOR REPLICATION 절을 지정하여 다시 만듭니다.The example then drops the constraint and recreates it specifying the NOT FOR REPLICATION clause.

    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)을 참조하세요.For more information, see ALTER TABLE (Transact-SQL).

관련 항목:See Also

스키마 옵션 지정Specify Schema Options