3

XML ファイルがあるとします (たとえば、CLOB 列を持つ Oracle テーブルに格納されている):

<ALFA>
  <BETA>0123</BETA>
  <GAMMA>2345</GAMMA>
  <DELTA>
     <EPSILON>3</EPSILON>
  </DELTA>
</ALFA>

出力で、すべての可能なパスのリストを作成するにはどうすればよいですか?

/ALFA/BETA/text()
/ALFA/GAMMA/text()
/ALFA/DELTA/EPSILON/text()

私の必要性は次のとおりです。長いXMLから多くの情報を抽出する必要があり、可能なすべてのパスでXMLEXTRACTを使用する必要があるため、それらを自動的に「dbms_output.put_line」できるかどうかを知りたいです。

タグの名前に依存しないソリューションが必要です。

XML は整形式であると想定してください。

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


  • 2 番目の例:

Oracle Java Extension がインストールされておらず、次のエラーが表示される場合、どうすればよいですか?

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

私は DBA ではなく、DBA は Oracle Java Extension のインストールを承認していないと仮定してください。

4

1 に答える 1