SUSTITUIR BADCHAR
Válido para
Extraer y Replicat
Descripción
Utilice el parámetro REPLACEBADCHAR para controlar la respuesta del proceso cuando no exista un punto de código válido para el juego de caracteres de origen o de destino al asignar columnas de tipo de carácter. Por defecto, la comprobación de puntos de código no válidos solo se realiza cuando las bases de datos de origen y destino tienen juegos de caracteres diferentes y la respuesta por defecto es finalizar de forma anormal. Puede utilizar la opción FORCECHECK para forzar al proceso a que compruebe los puntos del código no válidos cuando las bases de Datos de origen y destino tengan el mismo juego, REPLACEBADCHAR se aplica globalmente.
Valor por defecto
ABORT
Sintaxis
REPLACEBADCHAR {ABORT | SKIP | ESCAPE | SUBSTITUTE <string> | NULL | SPACE} [FORCECHECK] [NOWARNING]
ABORT
El proceso finaliza de forma anormal en un punto de código no válido. Éste es el estado por defecto.
SKIP
El proceso omite el carácter erróneo de un registro.
ESCAPE
El proceso sustituye el valor de datos por una versión con escape del valor de datos. Según el juego de caracteres de la base de datos origen, el valor se muestra como uno de los siguientes:
-
Si los datos de fuente no son
UTF-16(NCHAR/NVARCHAR), el resultado es hexadecimal (\xXX)). -
Si los datos de origen son
UTF-16, el resultado es Unicode (\uXXXX).)
SUBSTITUTE <string>
El proceso sustituye los datos por una cadena especificada, ya sea una notación Unicode o hasta cuatro caracteres. Por defecto, el carácter de sustitución por defecto del juego de caracteres de destino se utiliza para la sustitución.
NULL
El proceso sustituye un carácter no válido por el valor de NULL si la columna del destino es nula o, en caso contrario, asigna un espacio En blanco (U+0020).
SPACE
El proceso sustituye un carácter no válido por un espacio en blanco (U+0020).
FORCECHECK
El proceso comprueba si existen puntos de código no válidos cuando las bases de Datos origen y destino tengan juegos de caracteres idénticos. Esto sustituye el valor por defecto, donde se omite la validación cuando los conjuntos de caracteres de origen y destino sean idénticos.
NOWARNING
El proceso suprime los mensajes de advertencia relacionados con errores de conversión y validación.
Ejemplos
Ejemplo 1
El siguiente ejemplo sustituye los puntos de código no válidos por el valor NULL.
REPLACEBADCHAR NULL
Ejemplo 2
Debido a que se especifica ESCAPE, Oracle GoldenGate sustituirá el símbolo Euro en una columna NCHAR de origen por la versión con escape de u20AC, porque el destino es ISO-8859-1, que no soporta el punto de código Euro.
REPLACEBADCHAR ESCAPE
Ejemplo 3
A continuación, se sustituye un carácter de control por caracteres no válidos.
REPLACEBADCHAR SUBSTITUTE \u001A