방법: 동기화하는 동안 트리거 및 제약 조건 동작 제어(복제 Transact-SQL 프로그래밍)

동기화하는 동안 복제 에이전트는 복제된 테이블에서 INSERT(Transact-SQL), UPDATE(Transact-SQL)DELETE(Transact-SQL) 문을 실행합니다. 그러면 이 테이블에서 DML(데이터 조작 언어) 트리거가 실행될 수 있습니다. 그러나 동기화하는 동안 이러한 트리거 실행을 방지하거나 제약 조건을 적용하지 않아야 하는 경우가 있습니다. 이 동작은 트리거 또는 제약 조건을 만드는 방법에 따라 달라집니다.

동기화하는 동안 트리거 실행을 방지하려면

  1. 새 트리거를 만들 때 CREATE TRIGGER(Transact-SQL)의 NOT FOR REPLICATION 옵션을 지정합니다.

  2. 기존 트리거에 대해서는 ALTER TRIGGER(Transact-SQL)의 NOT FOR REPLICATION 옵션을 지정합니다.

동기화하는 동안 제약 조건을 적용하지 않으려면

  • 새 CHECK 또는 FOREIGN KEY 제약 조건을 만들 때 CREATE TABLE(Transact-SQL)의 제약 조건 정의에서 CHECK NOT FOR REPLICATION 옵션을 지정합니다.