Hitachi

ノンストップデータベース HiRDB Version 10 SQLリファレンス


1.14.1 XML型の記述形式

〈この項の構成〉

(1) 形式

XML型はデータ型を指定する箇所に,次に示す形式で指定します。

 XML

(2) データ形式

XML型はXML変換コマンド(phdxmlcnv)又はXML変換ライブラリを使用して,XML文書を解析した形式で処理します。この形式をESIS-B形式と呼びます。

(3) 最大長

XML型の値は,ESIS-B形式で2,147,483,647バイト以下である必要があります。ESIS-B形式の長さは,XML文書の長さだけではなく,XML要素数などの構造にも依存します。

(4) 値の生成

XML型の値はXMLコンストラクタ関数又はXMLPARSE関数で生成できます。

XMLコンストラクタ関数については,「XMLコンストラクタ関数」を参照してください。XMLPARSE関数については,「XMLPARSE」を参照してください。

(5) 値の取り出し

UAPでXML型の値を直接取り出すことはできません。XML型の値は,次の方法でVARCHAR型又はBINARY型の値として取り出すことができます。

(6) 値式の指定

XML型の値式として指定できるものを次に示します。

(7) 変換(代入,比較)できるデータ型

XML型の値は,XML型で定義された列,SQL変数,SQLパラメタにだけ代入できます。ほかのデータ型の値はXML型に代入できません。また,ほかのデータ型及びXML型との比較はできません。

(8) ナル値

XMLコンストラクタ関数を指定して値を生成していない場合,及びXMLコンストラクタ関数の引数にナル値を指定した場合は,XML型の値はナル値になります。また,XMLPARSE関数の引数にナル値を指定した場合,XML型の値はナル値になります。

(9) 使用上の注意事項

  1. XML型及び次の機能を使用するには,所有者をMASTERとしてHiRDB XML Extensionと連携する必要があります。

    • XMLコンストラクタ関数

    • XMLQUERY関数

    • XMLSERIALIZE関数

    • XMLEXISTS述語

    • XMLAGG集合関数

    • XMLPARSE関数

    • CREATE INDEX 形式3 (部分構造インデクス定義)

  2. XML型は,次に示す機能では使用できません。

    • CREATE INDEX 形式1によるインデクス定義

    • ソート

    • グループ分け

    • 集合演算,四則演算,連結演算

    • XMLAGGを除く集合関数

    • 重複排除

    • CASE式

    • CAST指定

    • 外への参照列

  3. INSERT文及びUPDATE文で列に格納できるXML型の値は,XMLコンストラクタ関数で生成した値を,挿入値又は更新値として指定した場合だけです。