XML 列のロード

XML 列は、LOAD ユーティリティーでは可変長データとして扱われます。 XML 列の長さ値は 2 バイトでなければなりません。

このタスクについて

入力データがバイナリー XML 形式である場合は、LOAD のパフォーマンスを改善できます。

プロシージャー

XML 列をロードするには、以下のようにします。

以下のいずれかの方法を使用します。
  • 入力データ・セットから直接 XML 値をロード: 入力データ・セットから直接 XML 値をロードするには、以下のようにします。
    1. 入力データ・セットに、XML 列の長さが入った 2 バイトの 2 進数フィールドが前に付いた XML 値を組み込みます。
    2. 入力レコードから直接ロードするには、入力フィールド・タイプとして XML を 指定する必要があります。 これは、入力レコードから XML 列をロードするために可能な唯一の フィールド・タイプです。 例えば、XMLであるRESUME列にデータをロードするには、 RESUME POSITION(7) XML のような指定を行います。 この仕様は、 入力データ・セットの位置 7 に XML 長が含まれていて、その後に、RESUME 列にロードされる XML 値が続いていることを示します。

      入力データが Extensible Dynamic Binary XML DB2 Client/Server Binary XML Format (バイナリー XML 形式) である場合は、入力フィールド・タイプとして XML BINARYXML を指定する必要があります。

    3. 入力レコードがスパン・レコード・フォーマットの場合、FORMAT SPANNED YES を指定し、フィールド仕様リストの最後に XML フィールドを指定します。
  • 入力データ・セットにリストされたファイルから XML 値をロード: あるファイルから XML 値をロードする場合、32 KB を超える XML 値にすることができます。 XML 値をファイルからロードするには、以下のようにします。
    1. 入力データ・セットに、XML 列にロードされる値を含むファイルの名前を 指定します。 ファイル名として指定できるのは、PDS、PDSE、または HFS ファイルです。
    2. LOAD ステートメントのフィールド指定部分に BLOBF、CLOBF、または DBCLOBF のいずれかを指定します。 例えば、XMLカラムRESUMEにCLOBファイルをロードするには、 RESUME POSITION(7) VARCHAR CLOBF のような指定を行います。 この仕様は、入力データ・セットの位置 7 に、RESUME 列にロードされる可変長 CLOB を含むファイルの名前が入っていることを示します。

      入力データがバイナリー XML 形式である場合は、フィールド仕様で BLOBF BINARYXML を指定する必要があります。

    3. XML タイプ修飾子が指定された列にデータをロードすると、LOAD は、タイプ修飾子で指定された XML スキーマに従って入力データを検証します。 LOAD は、違反を検出すると行を削除し、違反を示すメッセージを出します。