Como controlar o comportamento de gatilhos e restrições durante sincronização (Programação Transact-SQL de replicação)

Durante a sincronização, os agentes de replicação executam as instruções INSERT (Transact-SQL), UPDATE (Transact-SQL) e DELETE (Transact-SQL) em tabelas replicadas, o que pode causar a execução dos gatilhos DML (data manipulation language) nessas tabelas. Há casos em que é possível que você precise impedir o acionamento desses gatilhos ou a imposição de restrições durante a sincronização. Esse comportamento depende de como o gatilho ou a restrição foram criados.

Para evitar a execução de gatilhos durante a sincronização

  1. Ao criar um novo gatilho, especifique a opção NOT FOR REPLICATION de CREATE TRIGGER (Transact-SQL).

  2. Para um gatilho existente, especifique a opção NOT FOR REPLICATION de ALTER TRIGGER (Transact-SQL).

Para impedir a imposição de restrições durante a sincronização

  • Ao criar uma restrição CHECK ou FOREIGN KEY, especifique a opção CHECK FOR NOT REPLICATION na definição da restrição de CREATE TABLE (Transact-SQL).