Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Aplica-se a:SQL Server
Os resolvedores personalizados fornecem mais flexibilidade do que o mecanismo de resolução padrão e podem implementar a lógica de negócios exigida pelos aplicativos que usam os dados replicados. Um resolvedor personalizado baseado em COM é uma biblioteca de vínculo dinâmico (DLL) que implementa a interface COM ICustomResolver , seus métodos e propriedades e outras interfaces de suporte e definições de tipo projetadas especificamente para resolução de conflitos.
Observação
Recomenda-se usar um manipulador de lógica de negócios em vez de um resolvedor personalizado baseado em COM, se possível. Para obter mais informações sobre manipuladores de lógica de negócios, consulte Executar lógica de negócios durante a sincronização de mesclagem.
Para criar um resolvedor COM personalizado, você pode usar a biblioteca de tipos fornecida no replrec.dll; por padrão, essa biblioteca é instalada na <unidade>:\Arquivos de Programas\Microsoft SQL Server\nnn\COM.
Antes de escrever um resolvedor COM personalizado, você precisa decidir:
Os tipos de alterações de linha que você deseja resolver, como atualizações, inserções e exclusões, e se o resolvedor deve ser invocado durante o carregamento de alterações de mesclagem, o download de alterações de mesclagem ou ambos. Você pode especificar um tipo de alteração, todas as alterações ou qualquer combinação. O resolvedor de conflitos de mesclagem padrão lida com quaisquer conflitos não cobertos por um resolvedor personalizado.
Se o rastreamento de coluna deve ser usado ao resolver o conflito. Quando o acompanhamento no nível de coluna está ativado, apenas os dados nas colunas em que existe um conflito são sinalizados como um conflito, caso contrário, os dados são mesclados. No entanto, os conflitos são resolvidos da mesma forma que o rastreamento em nível de linha: o vencedor da prioridade substitui toda a linha de dados (mas os dados podem ser uma combinação de valores do Editor, Assinantes ou alguns valores alterados que não eram nem do Editor nem dos Assinantes). Para obter mais informações, consulte Detetar e resolver conflitos de replicação de mesclagem.
Para implementar um resolvedor de conflitos personalizado baseado em COM, consulte Implementar um resolvedor de conflitos personalizado para um artigo de mesclagem.
Um resolvedor personalizado é especificado para um artigo, não para uma publicação inteira. O mesmo resolvedor pode ser usado com mais de um artigo, mas a lógica em resolvedores personalizados geralmente é específica para uma tabela específica. Se a tabela usada no artigo for modificada após a criação do resolvedor (por exemplo, renomeando o nome da coluna usada na resolução de conflitos), o resolvedor personalizado talvez precise ser modificado e recompilado.
Para especificar um resolvedor personalizado, consulte Especificar um resolvedor de artigo de mesclagem.