SUBSTITUIÇÕES | NOOVERRIDEDUPS
Válido Para
Replicat
Descrição
Use os parâmetros OVERRIDEDUPS e NOOVERRIDEDUPS para controlar se Replicat substituirá ou não o registro existente no banco de dados de destino com um replicado, se ambos os registros tiverem a mesma chave.
-
OVERRIDEDUPSsubstitui o registro existente. Ele pode ser usado para carregamentos iniciais em que você não deseja truncar tabelas de destino antes do carregamento ou para a ressincronização de uma tabela de destino com uma origem confiável. Use o parâmetroSQLDUPERRcomOVERRIDEUPSpara especificar o código de erro numérico que é retornado pelo banco de dados para operaçõesINSERTduplicadas. Para obter mais informações, consulte "SQLDUPERR". -
NOOVERRIDEDUPS, o padrão, gera um erro de registro duplicado em vez de substituir o registro existente. Você pode usar uma instruçãoMAPde exceções com uma cláusulaSQLEXECpara iniciar uma resposta ao erro. Caso contrário, a transação poderá ser suspensa.Para ignorar registros duplicados sem fazer com que o Replicat seja encerrado quando um mapa de exceções não estiver disponível, especifique uma instrução de parâmetro
REPERRORsemelhante à seguinte, em que<error>é o número de erro do banco de dados para erros de restrição de chave primária.
REPERROR (<error>, IGNORE)
Por exemplo, a instrução de um Oracle AI Database seria:
REPERROR (1, IGNORE)
O processo Replicat grava registros duplicados ignorados no arquivo de descarte.
Coloque OVERRIDEDUPS ou NOOVERRIDEDUPS antes das instruções TABLE ou MAP que você deseja que elas afetem. Você pode criar regras diferentes para diferentes grupos de instruções TABLE ou MAP. Os parâmetros funcionam como alternâncias: um permanece em vigor para as instruções TABLE ou MAP subsequentes até que a outra seja encontrada.
O OVERRIDEDUPS é ativado automaticamente quando o HANDLECOLLISIONS é usado. Consulte "HANDLECOLLISIONS | NOHANDLECOLLISIONS" para obter mais informações.
WARNING: Quando OVERRIDEDUPS está em vigor, os registros podem não ser processados em ordem cronológica em vários processos Replicat.
Padrão
NOOVERRIDEDUPS
Sintaxe
OVERRIDEDUPS | NOOVERRIDEDUPS