DBMS_XMLSTORE
は、リレーショナル表内にXMLデータを格納する機能を提供します。
関連項目: 『Oracle XML DB開発者ガイド』 |
この章では、次の項目について説明します。
セキュリティ・モデル
タイプ
表200-2 DBMS_XMLSTOREパッケージのサブプログラム
メソッド | 説明 |
---|---|
|
キー列リストをクリアします。 |
|
更新列リストをクリアします。 |
|
特定の保存コンテキストのクローズまたは割当て解除を行います。 |
|
XML文書のデータで指定したレコードを、コンテキスト作成時に指定した表から削除します。 |
|
コンテキストの作成時に指定した表にXML文書を挿入します。 |
|
保存コンテキストを作成し、コンテキスト・ハンドルを戻します。 |
|
このメソッドは、キー列リストに列を追加します。 |
|
XML文書で使用されたタグに名前を付け、データベースに対応するXML要素を囲みます。 |
|
更新列リストに列を追加します。 |
|
XML文書を指定して、表を更新します。 |
キー列リストをクリアします。
構文
PROCEDURE clearKeyColumnList( ctxHdl IN ctxType);
パラメータ | IN / OUT | 説明 |
---|---|---|
ctxHdl |
(IN) |
コンテキスト・ハンドル。 |
更新列リストをクリアします。
構文
PROCEDURE clearUpdateColumnList( ctxHdl IN ctxType);
パラメータ | IN / OUT | 説明 |
---|---|---|
ctxHdl |
(IN) |
コンテキスト・ハンドル。 |
特定の保存コンテキストのクローズまたは割当て解除を行います。
構文
PROCEDURE closeContext( ctxHdl IN ctxType);
パラメータ | IN / OUT | 説明 |
---|---|---|
ctxHdl |
(IN) |
コンテキスト・ハンドル。 |
XML文書のデータで指定したレコードを、コンテキスト作成時に指定した表から削除し、削除した行数を戻します。
構文 | 説明 |
---|---|
FUNCTION deleteXML(
|
xDoc パラメータにVARCHAR2 タイプを使用します。 |
FUNCTION deleteXML(
|
xDoc パラメータにCLOB タイプを使用します。 |
FUNCTION deleteXML(
|
xDoc パラメータにXMLType タイプを使用します。 |
パラメータ | IN / OUT | 説明 |
---|---|---|
ctxHdl |
(IN) |
コンテキスト・ハンドル。 |
xDoc |
(IN) |
XML文書を含む文字列。 |
コンテキストの作成時に指定した表にXML文書を挿入し、挿入された行数を戻します。
ユーザーが、追加要素(表のいずれの列にも一致しない要素)を含むDBMS_XMLSTORE
にinsertXMLのXMLファイルを渡した場合、OracleはSETUPDATECOLUMNが使用されていないかぎり、それらの列への挿入を試みることに注意してください。XMLファイル内の要素が表内の列と一致する場合にのみ、setUpdateColumnを使用できます。
構文 | 説明 |
---|---|
FUNCTION insertXML(
|
xDoc パラメータをVARCHAR2 として渡します。 |
FUNCTION insertXML(
|
xDoc パラメータをCLOB として渡します。 |
FUNCTION insertXML(
|
xDoc パラメータをXMLType として渡します。 |
パラメータ | IN / OUT | 説明 |
---|---|---|
ctxHdl |
(IN) |
コンテキスト・ハンドル。 |
xDoc |
(IN) |
XML文書を含む文字列。 |
保存コンテキストを作成し、コンテキスト・ハンドルを戻します。
構文
FUNCTION newContext( targetTable IN VARCHAR2) RETURN ctxType;
パラメータ | IN / OUT | 説明 |
---|---|---|
targetTable |
(IN) |
XML文書のロード先となる表。 |
このメソッドは、「キー列リスト」に列を追加します。列の値をNULL
にはできません。更新または削除の場合、キー列リストの列が文のWHERE
句を構成します。更新を実行するには、キー列リストを先に指定する必要がありますが、削除操作においては、これはオプションです。
構文
PROCEDURE setKeyColumn( ctxHdl IN ctxType, colName IN VARCHAR2);
パラメータ | IN / OUT | 説明 |
---|---|---|
ctxHdl |
(IN) |
コンテキスト・ハンドル。 |
colName |
(IN) |
キー列リストに追加される列。NULL は設定できません。 |
XML文書で使用されたタグに名前を付け、データベース・レコードに対応するXML要素を囲みます。
構文
PROCEDURE setRowTag( ctxHdl IN ctxType, tag IN VARCHAR2);
パラメータ | IN / OUT | 説明 |
---|---|---|
ctxHdl |
(IN) |
コンテキスト・ハンドル。 |
tag |
(IN) |
タグ名。 |
更新列リストに列を追加します。挿入の場合、デフォルトでは表のすべての列に値が挿入される一方、更新の場合、デフォルトではXML文書のROW
要素に存在するタグに対応する列のみが更新されます。更新列リストが指定されている場合、このリストに含まれる列のみが更新または挿入の対象となります。
ユーザーが、追加要素(表のいずれの列にも一致しない要素)を含むDBMS_XMLSTOREにINSERTXML
のXMLファイルを渡した場合、Oracleは、setUpdateColumnが使用されていないかぎり、それらの列への挿入を試みることに注意してください。XMLファイル内の要素が表内の列と一致する場合にのみ、setUpdateColumnを使用できます。
構文
PROCEDURE setUpdateColumn( ctxHdl IN ctxType, colName IN VARCHAR2);
パラメータ | IN / OUT | 説明 |
---|---|---|
ctxHdl |
(IN) |
コンテキスト・ハンドル。 |
colName |
(IN) |
更新列リストに追加される列。 |
コンテキストの作成時に指定した表をXML文書のデータで更新し、更新された行数を戻します。指定できるオプションは、次の表のとおりです。
構文 | 説明 |
---|---|
FUNCTION updateXML(
|
xDoc パラメータをVARCHAR2 として渡します。 |
FUNCTION updateXML(
|
xDoc パラメータをCLOB として渡します。 |
FUNCTION updateXML(
|
xDoc パラメータをXMLType として渡します。 |
パラメータ | IN / OUT | 説明 |
---|---|---|
ctxHdl |
(IN) |
コンテキスト・ハンドル。 |
xDoc |
(IN) |
XML文書を含む文字列。 |