Compartilhar via


Especificar que as exclusões não devem ser controladas para artigos de mesclagem (Programação Transact-SQL de replicação)

ObservaçãoObservação

Esse recurso será removido em uma versão futura do Microsoft SQL Server. Evite usar esse recurso em desenvolvimentos novos e planeje modificar os aplicativos que atualmente o utilizam.

Por padrão, a replicação de mesclagem sincroniza comandos DELETE entre o Publicador e o Assinante. A replicação de mesclagem permite que as linhas sejam retidas no banco de dados de assinatura mesmo após terem sido excluídas da publicação e vice-versa. Especifique de forma programática que os comandos DELETE sejam ignorados durante a criação de um novo artigo ou habilite essa funcionalidade posteriormente, usando procedimentos armazenados de replicação.

Observação importanteImportante

Habilitar essa funcionalidade resultará em não convergência, o que significa que os dados presentes no Assinante não refletirão dados no Publicador da forma correta. É preciso implementar um mecanismo próprio para remover manualmente as linhas excluídas.

Para especificar que as exclusões sejam ignoradas para um novo artigo de mesclagem

  • No Publicador do banco de dados de publicação, execute sp_addmergearticle (Transact-SQL). Especifique um valor de false para @ delete_tracking. Para obter mais informações, consulte Defina um Artigo.

    ObservaçãoObservação

    Se a tabela de fonte de um artigo já estiver publicada em outra publicação, o valor de delete_tracking deverá ser o mesmo de ambos os artigos.

Para especificar que as exclusões sejam ignoradas para um artigo de mesclagem existente

  1. Para determinar se a compensação de erro está habilitada para um artigo, execute sp_helpmergearticle (Transact-SQL) e observe o valor de delete_tracking no conjunto de resultados. Se este valor for 0, as exclusões já estão sendo ignoradas.

  2. Se o valor da Etapa 1 for 1, execute sp_changemergearticle (Transact-SQL) no Publicador do banco de dados de publicação. Especifique um valor de delete_tracking para @property, e um valor de false para @value.

    ObservaçãoObservação

    Se a tabela de fonte de um artigo já estiver publicada em outra publicação, o valor de delete_tracking deverá ser o mesmo de ambos os artigos.

Consulte também

Conceitos

Otimizar o desempenho da replicação de mesclagem com o controle de exclusão condicional