Partilhar via


Como 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

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.