DBMS_XMLINDEX
パッケージでは、非同期の索引付けを実装するインタフェースが提供されています。
関連項目: XMLIndexの詳細は、『Oracle XML DB開発者ガイド』を参照してください。 |
この章では、次の項目について説明します。
概要
セキュリティ・モデル
次の表に、このパッケージのサブプログラムをアルファベット順に示します。
表193-1 DBMS_XMLINDEXパッケージのサブプログラム
サブプログラム | 説明 |
---|---|
|
|
|
|
|
指定したパラメータ識別子に関連付けられている |
|
指定したパラメータ名に関連付けられている |
|
|
|
パラメータ文字列と |
|
索引を手動で同期化します。 |
このプロシージャは、XMLIndex
の記憶表であるPATH
TABLE
のVALUE
列に、日付値の2次索引を作成します。プロシージャの2番目の形式を使用すると、date_index_clause
を空の文字列に設定できます。
構文
DBMS_XMLINDEX.CREATEDATEINDEX ( xml_index_schema IN VARCHAR2, xml_index_name IN VARCHAR2, date_index_name IN VARCHAR2, xmltypename IN VARCHAR2, date_index_clause IN VARCHAR2); DBMS_XMLINDEX.CREATEDATEINDEX ( xml_index_schema IN VARCHAR2 xml_index_name IN VARCHAR2, date_index_name IN VARCHAR2, xmltypename IN VARCHAR2);
パラメータ
表193-2 CREATEDATEINDEXプロシージャのパラメータ
パラメータ | 説明 |
---|---|
|
|
|
|
|
|
|
パス表の |
|
作成時に日付索引に適用するSTORAGE句。日付索引を作成するために |
このプロシージャは、XMLIndex
の記憶表であるPATH
TABLE
のVALUE
列に、数値の2次索引を作成します。
構文
DBMS_XMLINDEX.CREATENUMBERINDEX ( xml_index_schema IN VARCHAR2, xml_index_name IN VARCHAR2, num_index_name IN VARCHAR2, num_index_clause IN VARCHAR2, xmltypename IN VARCHAR2);
パラメータ
表193-3 CREATENUMBERINDEXプロシージャのパラメータ
パラメータ | 説明 |
---|---|
|
|
|
|
|
|
|
作成時に数値索引に適用するSTORAGE句。数値索引を作成するために |
|
パス表の |
このプロシージャのプロセスは、XMLIndex
でのNONBLOCKING
ALTER INDEX ADD_GROUP/ADD_COLUMN
操作の完了に必要なDMLを実行します。
構文
DBMS_XMLINDEX.PROCESS_PENDING ( xml_index_schema IN VARCHAR2, xml_index_name IN VARCHAR2, pending_row_count OUT BINARY_INTEGER, error_row_count OUT BINARY_INTEGER);
使用上の注意
このプロシージャは、ロックされた行とエラーのために索引メンテナンスが失敗した行をスキップしながら、必要なすべての行の索引付けを小さいバッチで繰り返し試行します。したがって、保留中の行がすべて処理されるまで、XMLIndexに対して複数回実行する必要がある場合があります。保留中の行がすべて処理されたら、NONBLOCKING
ALTER
INDEX
OPERATION
を完了できます。
何度か試みた後でも保留中のすべての行が処理できない場合は、SYS_AIXSXI_######_PENDINGTAB
で未処理の行を調べた後、SYS_AIXSXI_#####_ERRORTAB
でエラーを確認して、ロックおよびエラーの問題を手動でトリアージする必要があります。行とエラーを追跡しておくと、問題のトリアージを行う場合に役立ちます。
このプロシージャは、パラメータ識別子とXMLIndex
パラメータ文字列のペアをXDBに登録します。
例
DBMS_XMLINDEX.REGISTERPARAMETER ( 'myIndexParam', 'PATH TABLE po_ptab PATH ID INDEX po_pidx ORDER KEY INDEX po_oidx VALUE INDEX po_vidx PATHS(NAMESPACE MAPPING(xmlns:p="http://www.example.com/IPO")) GROUP MASTERGROUP XMLTABLE PO_TAB (''/p:PurchaseOrder'' COLUMNS REFERENCE VARCHAR2(30) PATH ''p:Reference'', REQUESTOR VARCHAR2(30) PATH ''p:Requestor'' ) GROUP ITEMGROUP XMLTABLE ITEMGROUP_TAB (''/p:PurchaseOrder/p:LineItems/p:LineItem'' COLUMNS LINENUMBER NUMBER(38) PATH ''@p:ItemNumber'', QUANTITY NUMBER(38) PATH ''@p:Quantity'', DESCRIPTION VARCHAR2(256) PATH ''p:Description'''));