XMLPI スカラー関数
XMLPI 関数は、XQuery 処理命令ノードを 1 つ持つ XML 値を戻します。
スキーマは SYSIBM です。 関数名を修飾名で指定することはできません。
- 名前 pi-name
- 処理命令の名前を指定します。 この名前は SQL ID であり、XML NCName の形式でなければなりません (SQLSTATE 42634)。 有効な名前の詳細については、 W3C XML namespace specifications を参照してください。 どのような大/小文字の組み合わせにしても、この名前を「xml」にすることはできません (SQLSTATE 42634)。 ストリング式
- 文字ストリングである値を戻す式。 結果のストリングは UTF-8 に変換されます。
これは、XML 1.0 規則で指定されている XML 処理命令の内容に従っていなければなりません (SQLSTATE 2200T)。
- ストリングにサブストリング「?>」を含めてはなりません。このサブストリングは処理命令を終了させるからです。
- ストリングの各文字には任意の Unicode 文字を使用できます。ただし、サロゲート・ブロック X'FFFE' および X'FFFF' は除きます。
結果として生成されるストリングは、構成される処理命令ノードの内容になります。
結果のデータ・タイプは XML です。 string-expression の結果が NULL になる可能性がある場合、結果も NULL になる可能性があります。 string-expression の結果が NULL であれば、結果も NULL 値になります。 string-expression が空ストリングであるかまたは指定されない場合、空の処理命令ノードが戻されます。
例
- 例 1: XML 処理命令ノードを生成します。
この照会は、次のような結果を生成します。SELECT XMLPI( NAME "Instruction", 'Push the red button' ) FROM SYSIBM.SYSDUMMY1
<?Instruction Push the red button?>
- 例 2: 空の XML 処理命令ノードを生成します。
この照会は、次のような結果を生成します。SELECT XMLPI( NAME "Warning" ) FROM SYSIBM.SYSDUMMY1
<?Warning ?>