次のクエリを実行します。
SELECT *
FROM XMLTABLE (
'
declare function local:path-to-node( $nodes as node()* ) as xs:string* {
$nodes/string-join(ancestor-or-self::*/name(.), ''/'')
};
for $i in $rdoc//name
return <ret><name_path>{local:path-to-node($i)}</name_path>{$i}</ret>
'
PASSING XMLPARSE (
CONTENT
'
<users><user><name>user1</name></user>
<user><name>user2</name></user>
<group>
<user><name>user3</name></user>
</group>
<user><name>user4</name></user>
</users>'
) AS "rdoc" COLUMNS name_path varchar2 (4000) PATH
'//ret/name_path', name_value varchar2 (4000) PATH
'//ret/name')
次のエラーが表示されます。
ORA-19112: error raised during evaluation:
ORA-06550: line 1, column 13:
PLS-00201: identifier 'SYS.DBMS_XQUERYINT' must be declared
ORA-06550: line 1, column 7:
PL/SQL: Statement ignored
問題は、Java がインストールされていないことです。ほとんどの場合、XQuery は C 経由で実行されますが、10.2.0.1.0 は Java ベースの XQuery パーサーを使用します。
SYS および SYSTEM 資格情報を持っていると仮定してください。
Java for Oracle 拡張機能をインストールするにはどうすればよいですか?
よろしくお願いいたします。