将列数据转换为xml格式;查询失败,因为当前不支持所有列类型

时间:2012-07-09 11:11:06

标签: plsql oracle10g sqltools

我正在尝试将列数据转换为xml格式,但我收到此错误消息:

  

查询失败,因为当前不支持所有列类型。

CREATE TABLE EMP(NAME VARCHAR2(10 BYTE))

INSERT INTO EMP VALUES ('C');
INSERT INTO EMP VALUES ('A');
INSERT INTO EMP VALUES ('T');

SELECT xmlelement("NAME",NAME) FROM EMP;

我正在使用:

  

Oracle数据库10g企业版10.2.0.4.0版 - 64bi

     

PL / SQL版本10.2.0.4.0 - 生产

     

SQLTools 1.5.0 Beta build 9 as EDITOR

为什么会出现这个错误?解决方案是什么?

2 个答案:

答案 0 :(得分:0)

我找到了答案:

select dbms_xmlquery.getxml('select * from EMP') from dual;

答案 1 :(得分:0)

这是一种解决方法而非解决方案。

我遇到了与sam相同的问题 - 同时运行SELECT xmlelement语句,也使用 SQLTools 。一个区别是我运行的是Oracle DB 11.2.0.2.0版。

我发现如果我在 SQLPlus 中运行语句,它就能显示结果。

SQL> SELECT XMLELEMENT("name",ename) FROM scott.emp WHERE ROWNUM < 3;

XMLELEMENT("NAME",ENAME)
--------------------------------------------------------------------------------
<name>SMITH</name>
<name>ALLEN</name>

如果我在 SQL Developer 中运行该语句,则尝试显示结果,但只显示(XMLTYPE)Using XMLElement in SQL Developer