この項では、ユーザー・データおよびデータ定義言語(DDL)のキャラクタ・セット変換に関連するデータ・ポンプ・エクスポートおよびインポートのグローバリゼーション・サポートの動作について説明します。
エクスポート・ユーティリティは、常に、エクスポート・システムのキャラクタ・セットでUnicodeデータを含むユーザー・データをエクスポートします。(キャラクタ・セットは、データベース作成時に指定されます。)ソース・データベースのキャラクタ・セットが、インポート・データベースのキャラクタ・セットと異なる場合、自動的にデータをインポート・システムのキャラクタ・セットに変換するための単一の変換が実行されます。
エクスポート・キャラクタ・セットのソート順が、インポート・キャラクタ・セットと異なる場合、キャラクタ列をパーティション化した表では、結果が保証されません。たとえば、次のようなASCIIキャラクタ・セットのデータベースの表定義について考えてみます。
CREATE TABLE partlist ( part VARCHAR2(10), partno NUMBER(2) ) PARTITION BY RANGE (part) ( PARTITION part_low VALUES LESS THAN ('Z') TABLESPACE tbs_1, PARTITION part_mid VALUES LESS THAN ('z') TABLESPACE tbs_2, PARTITION part_high VALUES LESS THAN (MAXVALUE) TABLESPACE tbs_3 );
ASCIIキャラクタ・セットでは、Z
の後にz
があるため、このパーティション・スキームには意味があります。
この表がEBCDICキャラクタ・セット・ベースのデータベースにインポートされると、EBCDICキャラクタ・セットでは、z
がZ
の前にあるため、part_mid
パーティションのすべての行が、part_low
パーティションに移行します。希望する結果を得るには、partlist
表の所有者は、インポート後に表を再パーティション化する必要があります。
エクスポート・ユーティリティは、エクスポート・システムのデータベース・キャラクタ・セットを使用してダンプ・ファイルを書き込みます。
インポート・システムのデータベース・キャラクタ・セットがエクスポート・システムのデータベース・キャラクタ・セットと異なる場合にのみ、ダンプ・ファイルのインポート時にDDLのためにキャラクタ・セット変換が必要です。
キャラクタ・セット変換によるデータの損失を最小限にするには、インポートのデータベース・キャラクタ・セットがエクスポートのデータベース・キャラクタ・セットのスーパーセットであることを確認します。
インポートが実行されるシステムで7ビット・キャラクタ・セットを使用し、8ビット・キャラクタ・セットのダンプ・ファイルをインポートすると、一部の8ビット・キャラクタは同等の7ビットに変換されることがあります。これが発生した場合の目印として、アクセント記号が付いている文字からアクセントが消去されます。
この不要な変換を回避するため、エクスポート・データベースとインポート・データベースで同じキャラクタ・セットを使用していることを確認してください。
インポート・データベースのキャラクタ・セットに同等の文字がないエクスポート・ファイル中の文字は、変換時にデフォルトの文字に置換されます。インポート・データベースのキャラクタ・セットは、デフォルトの文字を定義します。
DDLの変換中にインポート・システムで置換文字を使用する必要がある場合、警告メッセージが表示され、システムは変換されたDDLをロードしようと試みます。
ユーザー・データの変換中にインポート・システムで置換文字を使用する必要がある場合、デフォルトの動作として、変換されたデータがロードされます。ただし、置換文字を使用して変換されたユーザー・データの行を拒否するようにインポート・システムに指示することが可能です。詳細は、インポートの「DATA_OPTIONS」パラメータを参照してください。
100%完全に変換されるためには、インポート・データベースのキャラクタ・セットは、エクスポート・ファイルを生成するために使用されるキャラクタ・セットのスーパーセットであるか、それと同等である必要があります。
注意:
エクスポート・システムのデータベース・キャラクタ・セットがインポート・システムのものと異なる場合、ジョブの開始時に、データベース・キャラクタ・セットの内容を示す情報メッセージがインポート・システムに表示されます。
インポート・データベースのキャラクタ・セットがエクスポート・ファイルを生成するために使用されたキャラクタ・セットのスーパーセットではない場合、キャラクタ・セット変換によってデータ損失が発生する可能性があることを示す警告がインポート・システムに表示されます。