OVERRIDEDUPS | NOOVERRIDEDUPS
Válido para
Replicat
Descripción
Utilice los parámetros OVERRIDEDUPS y NOOVERRIDEDUPS para controlar si Replicat sustituye o no un registro existente en la base del datos destino con uno replicado si ambos registros tienen la misma clave.
-
OVERRIDEDUPSsobrescribe el registro existente. Se puede utilizar para cargas iniciales en las que no desea truncar las tablas de destino antes de la carga o para la resincronización de una tabla de destino con un origen de confianza. Utilice el parámetroSQLDUPERRconOVERRIDEUPSpara especificar el código de error numérico que devuelve la base de datos para las operacionesINSERTduplicadas. Consulte "SQLDUPERR" para obtener más información. -
NOOVERRIDEDUPS, el valor predeterminado, genera un error de registro duplicado en lugar de sobrescribir el registro existente. Puede utilizar una sentenciaMAPde excepciones con una cláusulaSQLEXECpara iniciar una respuesta al error. De lo contrario, la transacción puede finalizar de forma anormal.Para omitir registros duplicados sin que Replicat termine de forma anormal cuando no hay disponible una asignación de excepciones, especifique una sentencia de parámetro
REPERRORsimilar a la siguiente, donde<error>es el número de error de la base de datos para los errores de restricción de clave primaria.
REPERROR (<error>, IGNORE)
Por ejemplo, la sentencia para una instancia de Oracle AI Database sería:
REPERROR (1, IGNORE)
Replicat escribe registros duplicados ignorados en el archivo de desecho.
Coloque OVERRIDEDUPS o NOOVERRIDEDUPS antes de las sentencias TABLE o MAP a las que desea que afecte. Puede crear diferentes reglas para diferentes grupos de sentencias TABLE o MAP. Los parámetros actúan como conmutadores: uno permanece en vigor para las sentencias TABLE o MAP posteriores hasta que se encuentra el otro.
OVERRIDEDUPS se activa automáticamente cuando se utiliza HANDLECOLLISIONS. Consulte "HANDLECOLLISIONS | NOHANDLECOLLISIONS" para obtener más información.
WARNING: cuando OVERRIDEDUPS está en vigor, es posible que los registros no se procesen en orden cronológico en varios procesos de Replicat.
Valor por defecto
NOOVERRIDEDUPS
Sintaxis
OVERRIDEDUPS | NOOVERRIDEDUPS