OVERRIDE | NESSUN OVERRIDE
Valido per
Replicat
Descrizione
Utilizzare i parametri OVERRIDEDUPS e NOOVERRIDEDUPS per stabilire se Replicat sovrascrive o meno un Record esistente nel database di destinazione con un Record replicato qualora entrambi i record abbiano la stessa chiave.
-
OVERRIDEDUPSsovrascrive il record esistente. Può essere utilizzato per i caricamenti iniziali in cui non si desidera troncare le tabelle di destinazione prima del caricamento o per la risincronizzazione di una tabella di destinazione con un'origine sicura. Utilizzare il parametroSQLDUPERRconOVERRIDEUPSper specificare il codice di errore numerico restituito dal database per le operazioniINSERTduplicate. Per ulteriori informazioni, vedere "SQLDUPERR". -
NOOVERRIDEDUPS, l'impostazione predefinita, genera un errore di record duplicati invece di sovrascrivere il record esistente. È possibile utilizzare un'istruzioneMAPdelle eccezioni con una clausolaSQLEXECper avviare una risposta all'errore. In caso contrario, la transazione potrebbe essere interrotta.Per ignorare i record duplicati senza causare l'interruzione di Replicat quando non è disponibile una mappa delle eccezioni, specificare un'istruzione del parametro
REPERRORsimile alla seguente, dove<error>è il numero di errore del database per gli errori di vincolo della chiave primaria.
REPERROR (<error>, IGNORE)
Ad esempio, l'istruzione per un Oracle AI Database sarebbe:
REPERROR (1, IGNORE)
Replicat scrive i record duplicati ignorati nel file eliminato.
Inserire OVERRIDEDUPS o NOOVERRIDEDUPS prima delle istruzioni TABLE o MAP che si desidera vengano interessate. È possibile creare regole diverse per gruppi diversi di istruzioni TABLE o MAP. I parametri fungono da interruttori: uno rimane in vigore per le istruzioni TABLE o MAP successive fino a quando non viene rilevato l'altro.
OVERRIDEDUPS viene abilitato automaticamente quando si utilizza HANDLECOLLISIONS. Per ulteriori informazioni, vedere "HANDLECOLLISIONS | NOHANDLECOLLISIONS".
WARNING: quando OVERRIDEDUPS è attivo, è possibile che i record non vengano elaborati in ordine cronologico in più processi Replicat.
Predefinito
NOOVERRIDEDUPS
Sintassi
OVERRIDEDUPS | NOOVERRIDEDUPS