XML 列を持つ表の作成
XML 列を持つ表を作成するには、CREATE TABLE ステートメントで XML データ・タイプを持つ列を指定します。 表には 1 つ以上の XML 列を含めることができます。
XML 列を定義する際、長さは指定しません。 データベース内の XML 値のサイズには、設計上の限度はありません。 ただし、Db2 データベースと交換されるテキスト XML データは、2 GB-1 に制限されるため、XML 列の実効限度は 2 GB-1 です。
LOB 列と同様に、XML 列は列の記述子のみを保持します。 データは別個に保管されます。
XML 列を定義するときに、XML タイプ修飾子 を追加することができます。 XML タイプ修飾子によって、1 つ以上の XML スキーマのセットが XML データ・タイプに関連付けられます。 XML タイプ修飾子を使用すると、1 つの XML 列に格納されるすべての XML 文書を、タイプ修飾子に指定した XML スキーマの 1 つに従って妥当性検査することができます。
XML 列を含む表をユニバーサル表スペースに作成する際、Db2 では、更新操作中に XML 文書の複数バージョンを維持して並行性とメモリー使用率を向上させます。
例: 顧客データ用の表が 2 つの XML 列を含んでいます。 この定義は次のようになります。
CREATE TABLE CUSTOMER (CID BIGINT NOT NULL PRIMARY KEY,
INFO XML,
HISTORY XML)
例: 顧客データ用の表は CONTENT という
名前の XML 列を含んでいます。 XML 列に含まれる文書は XML スキーマ SYSXSR.PO1 に従って妥当性検査される必要があります。このスキーマは、既に登録されています。 この定義は次のようになります。
CREATE TABLE PURCHASEORDERS(
ID INT NOT NULL,
CONTENT XML(XMLSCHEMA ID SYSXSR.PO1))