【发布时间】:2019-06-22 01:16:09
【问题描述】:
尝试从 CLOB XML 列中获取值时,我收到以下错误:
ORA-31011: XML parsing failed
ORA-19202: Error occurred in XML processing
LPX-00601: Invalid token in: '/l-analysis/vehicle/odometer-reading/reading value/text()'
31011. 00000 - "XML parsing failed"
*Cause: XML parser returned an error while trying to parse the document.
*Action: Check if the document to be parsed is valid.
我有以下 XML 输出:
<?xml version="1.0" encoding="UTF-8"?>
<l-analysis>
<vehicle>
<make>SAAB</make>
<model>9000 CSI</model>
<body-style code="SL">Saloon</body-style>
<vehicle-type code="7">Passenger car/van</vehicle-type>
<odometer-reading latest="true">
<reading value="154267213">154267213</reading>
<reading-date value="2006-07-17">17-Jul-2006</reading-date>
</odometer-reading>
</vehicle>
</l-analysis>
当尝试获取 reading value 值时,我正在运行以下查询:
select XMLTYPE(xml_data).EXTRACT('/l-analysis/vehicle/odometer-reading/reading value/text()').getStringVal() AS XML FROM lm
我相信错误是由于reading value 有空格?因为另一个没有空格的 XML 列可以工作。
我怎样才能让它工作?
【问题讨论】: