Oracle SQL 仅输出 XMLElement (XMLTYPE)

Oracle SQL XMLElement only outputting (XMLTYPE)

我有一个小查询要输出 XML。

代码:

SELECT XMLElement("NAME", e.name)
FROM person e

输出:

XMLELEMENT("NAME,E.NAME)
(XMLTYPE)

我是 Oracle 中 XML 方面的新手,为什么它不输出 XML?

首选项中有一个设置让它在查询结果 window 中显示实际 XML。

转到 SQL 开发人员工具菜单,选择首选项,展开数据库部分,然后转到高级部分:

勾选 'Display XML Value in Grid',点击确定,然后重新运行您的查询。

当该选项设置时,您仍然可以通过右键单击网格中的 (XMLTYPE) 并选择“单记录视图”来查看单个行的实际值...`,但除非您要验证一些有点笨重的大型文档。

或者,正如@WernfriedDomscheit 所建议的,您可以更改查询以从 XMLType 获取 CLOB 值。 (包括 XMLAgg(),其中 returns 也是 XML 类型)。

此外,如果您 运行 将查询作为脚本 (F5) 而不是语句 (control-enter),则 XML 将显示在脚本输出 window 中,无论该设置的(因为它只适用于网格视图)。不过,您可能需要 set long 更高的值才能看到有用的数量,因为默认情况下根本不会显示太多。