私は Oracle を初めて使用し、おそらく些細なことですが、select に問題があります。(私は Oracle 10g Express Edition を使用しています)。
フィールド CLOB を持つ DB があります: mytab.xml この列には、次のような XML があります。
<?xml version="1.0" encoding="iso-8859-1"?>
<info>
<id> 954 </id>
<idboss> 954 </idboss>
<name> Fausto </name>
<sorname> Anonimo </sorname>
<phone> 040000000 </phone>
<fax> 040000001 </fax>
</info>
たとえば、「fax」タグの値を取得するために「単純な」選択をしようとしています。しかし、私は少し問題があり、エラーを理解できません。例えば:
select extract(xml, '//fax').getStringVal() from mytab;
ORA-00932: inconsistent datatypes: expected - got
select extract(xmltype(xml), '//fax').getStringVal() from mytab;
ORA-06502: PL/SQL: numeric or value error
ORA-06512: at "SYS.XMLTYPE", line 254
「extractvalue」でも試しましたが、同じ問題があります。これを行うにはどこが間違っていますか?