補充バドチャ

有効な対象

ExtractおよびReplicat

摘要

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

デフォルト

ABORT

構文

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

ABORT

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

SKIP

レコードの不正な文字がスキップされます。

ESCAPE

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

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