首批通过分布式安全可靠测评,为关键业务系统打造
XMLPARSE
更新时间:2026-02-06 13:07:50
描述
该函数解析输入的字符串并生成 XMLType 数据类型。
语法
XMLPARSE
({ DOCUMENT | CONTENT } value_expr [ WELLFORMED ])
参数解释
| 字段 | 说明 |
|---|---|
| DOCUMENT | 指定解析的内容必须为一个单根节点的 XML 文档。DOCUMENT 可以带声明头也可以不带。 |
| CONTENT | 指定解析的内容必须为一个有效的 XML 片段。CONTENT 一定不带声明头,否则会报错。 |
| value_expr | 指定被解析的字符串。结果的字符类型可以为 CHAR、VARCHAR2、NCHAR、NVARCHAR2 或 CLOB。 |
注意:如果 value_expr 计算结果为 NULL,函数也会返回 NULL。 |
|
| WELLFORMED | 如果标记 WELLFORMED,将不执行解析内容的有效性检查,为可选项。 |
返回类型
返回 XMLType 数据类型。
示例
# 解析一个有效的 XML 片段 'abc'
obclient> SELECT XMLPARSE(CONTENT '<a>abc</a>') FROM DUAL;
+-------------------------------+
| XMLPARSE(CONTENT'<A>ABC</A>') |
+-------------------------------+
| <a>abc</a>
|
+-------------------------------+
1 row in set
# 解析 XML DOCUMENT
obclient> SELECT XMLPARSE(DOCUMENT '<?xml version="1.0" encoding="UTF-8" ?><body>135 <purchaseOrder poNo="12435">
<customerName> Enterprises</customerName>
<itemNo>123456</itemNo>
</purchaseOrder></body>'
WELLFORMED) AS PRO FROM DUAL;
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| PRO |
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| <?xml version="1.0" encoding="UTF-8"?>
<body>135 <purchaseOrder poNo="12435">
<customerName> Enterprises</customerName>
<itemNo>123456</itemNo>
</purchaseOrder>
</body>
|
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set