0

次のクエリを実行します。

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 拡張機能をインストールするにはどうすればよいですか?

よろしくお願いいたします。

4

1 に答える 1

1
STEP-BY-STEP GUIDE
1. As SYS, confirm the JVM is not already installed. 

    SELECT comp_id, comp_name FROM dba_registry; 

should not list JAVAM or CATJAVA.

2. As SYS, perform the JVM installation. 

@?/javavm/install/initjvm.sql

@?/rdbms/admin/catjava.sql

3. As SYS, confirm the JVM is now fully installed:

    SELECT comp_id, comp_name FROM dba_registry;


    COMP_ID    COMP_NAME
    ---------  --------------------------------------------
    EM         Oracle Enterprise Manager
    CATALOG    Oracle Database Catalog Views
    CATPROC    Oracle Database Packages and Types
    JAVAVM     JServer JAVA Virtual Machine
    CATJAVA    Oracle Database Java Packages
于 2013-09-11T08:46:47.093 に答える