대치바다르

유효 기간

추출 및 복제

설명

문자 유형 열을 매핑할 때 소스 또는 대상 문자 집합에 대해 적합한 코드 포인트가 없을 경우 REPLACEBADCHAR 매개변수를 사용하여 프로세스의 응답을 제어합니다. 기본적으로 부적합한 코드 지점 검사는 소스 및 대상 데이터베이스에 다른 문자 집합이 있고 기본 응답이 비정상 종료인 경우에만 수행됩니다. FORCECHECK 옵션을 사용하면 소스와 대상 데이터베이스의 문자 집합이 같을 때 부적합한 코드포인트 검사를 프로세스에 강제 적용할 수 있으며, REPLACEBADCHAR는 전역적으로 적용됩니다.

기본값

ABORT

구문

REPLACEBADCHAR {ABORT | SKIP | ESCAPE | SUBSTITUTE <string> | NULL | SPACE} [FORCECHECK] [NOWARNING]

ABORT

부적합한 코드포인트에서 프로세스가 비정상 종료됩니다. 이는 기본값입니다.

SKIP

이 프로세스는 레코드의 잘못된 문자를 건너뜁니다.

ESCAPE

이 프로세스는 데이터 값을 데이터 값의 이스케이프 버전으로 바꿉니다. 원본 데이터베이스의 문자 집합에 따라 값은 다음 중 하나로 출력됩니다.

SUBSTITUTE <string>

이 프로세스는 데이터를 지정된 문자열(유니코드 표기법 또는 최대 4자)로 바꿉니다. 기본적으로 대상 문자 집합의 기본 대체 문자는 대체에 사용됩니다.

NULL

대상 열이 널 가능 열일 때 부적합한 문자를 NULL 값으로 바꾸고, 그렇지 않으면 공백(U+0020)을 지정합니다.

SPACE

부적합한 문자를 공백(U+0020)으로 바꿉니다.

FORCECHECK

소스와 대상 데이터베이스의 문자 집합가 같을 때 부적합한 코드포인트를 검사합니다. 이는 소스와 대상 문자 집합가 같을 때 검증을 건너뛴다는 기본값을 무효화합니다.

NOWARNING

변환 및 검증 오류와 관련된 경고 메시지를 표시하지 않습니다.

예제

예 1

다음 예에서는 부적합한 코드 포인트를 NULL 값으로 바꿉니다.

REPLACEBADCHAR NULL

예 2

ESCAPE가 지정되었으므로 Oracle GoldenGate는 소스 NCHAR 열의 유로 기호를 이스케이프된 버전 u20AC로 바꿉니다. 대상은 유로 코드 포인트를 지원하지 않는 ISO-8859-1이기 때문입니다.

REPLACEBADCHAR ESCAPE

예 3

다음은 부적합한 문자에 대한 제어 문자를 대체합니다.

REPLACEBADCHAR SUBSTITUTE \u001A