神秘的getClobVal()

时间:2014-10-20 12:03:33

标签: oracle comments clob xmltype

我有一个表(AKADMIN),其XMLTYPE列名为XML。 我想在这个列中使用getClobVal()。

select t.xml.getClobVal() /**/ 
,      t.xml.getClobVal() --
,      t.xml.getClobVal() as clobval
,      t.xml.getClobVal()
from akadmin t where ROWID = 'AAAQc6AAIAAAADDAAA' ;

在结果集中,前4列为CLOB类型,第5列为XMLTYPE。我必须在getClobVal()之后键入任何注释或别名来更正(CLOB)结果类型。为什么呢?

另一个问题,当我离开tablename的别名时:

select xml.getClobVal()
from akadmin t where ROWID = 'AAAQc6AAIAAAADDAAA' ;

抛出ORA-00904 string: invalid identifier 嗯...

有人有任何想法吗?

有关环境的补充信息: Oracle Database 11g企业版11.2.0.4.0版; PL / SQL Developer 10.0.5.1710

但是我们通过OJDBC6在我们的Java apllication中尝试了相同的结果

1 个答案:

答案 0 :(得分:4)

你应该把xml放在括号中:

select (xml).getClobVal() from akadmin;

适合我