主コンテンツへ
Oracle® Fusion Middleware Oracle GoldenGateリファレンスfor Windows and UNIX
12c (12.2.0.1)
E70112-04
目次へ移動
目次

前
次

3.138 REPLACEBADCHAR

適用対象

ExtractおよびReplicat

説明

REPLACEBADCHARパラメータでは、文字型の列をマップするときに有効なコード・ポイントがソースまたはターゲットのキャラクタ・セットのいずれにも存在しない場合、プロセスのレスポンスを制御します。デフォルトでは、無効なコード・ポイントの確認はソース・データベースとターゲット・データベースの文字セットが異なる場合のみ実行され、デフォルト・レスポンスは異常終了です。ソース・データベースとターゲット・データベースの文字セットが同じ場合に無効なコード・ポイントの確認をプロセスに強制する場合は、FORCECHECKオプションを使用できます。REPLACEBADCHARはグローバルに適用されます。

デフォルト

ABORT

構文

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

プロセスは、無効なコード・ポイントで異常終了します。これはデフォルトです。

SKIP

無効なコード・ポイントを持つレコードをスキップします。レコードのスキップがターゲットでのデータ不一致の原因になる可能性があるため、このオプションは慎重に使用してください。

ESCAPE

データ値をエスケープ・バージョンのデータ値に置換します。ソース・データベースのキャラクタ・セットに応じて、値は次のいずれかとして出力されます。

  • ソース・データがUTF-16 (NCHAR/NVARCHAR)でない場合、出力は16進(\xXX)です。

  • ソース・データがUTF-16の場合、出力はUnicode (\uXXXX)です。

SUBSTITUTE string

データをUnicode表記法または4文字以下の指定された文字列に置換します。デフォルトでは、ターゲット・キャラクタ・セットのデフォルト置換文字が置換に使用されます。

NULL

ターゲット列がNull値可能である場合は無効な文字をNULL値に置換し、それ以外の場合は空白(U+0020)を割り当てます。

SPACE

無効な文字を空白(U+0020)に置換します。

FORCECHECK

ソース・データベースおよびターゲット・データベースのキャラクタ・セットが同一の場合、無効なコード・ポイントをチェックします。このオプションはデフォルトより優先されます。デフォルトでは、ソースおよびターゲットのキャラクタ・セットが同一の場合、検証はスキップされます。

NOWARNING

変換エラーおよび検証エラーに関連する警告メッセージを抑止します。

例1   

次の例では、無効なコード・ポイントをNULL値に置換します。

REPLACEBADCHAR NULL
例2   

ESCAPEが指定されているので、ソースのNCHAR列のユーロ記号がエスケープ・バージョンのu20ACに置換されます。これは、ターゲットがISO-8859-1で、ユーロ・コード・ポイントがサポートされないためです。

REPLACEBADCHAR ESCAPE
例3   

次の例では、無効な文字を制御文字に置換します。

REPLACEBADCHAR SUBSTITUTE \u001A