【发布时间】:2016-03-05 22:18:47
【问题描述】:
我有以下格式的 XML,需要将数据插入到表中。
数据是动态的,需要插入到 PL/SQL 表中。请您指导我如何解决这个问题。
<?xml version="1.0" encoding="UTF-8"?>
<Result>
<Name SN="ABC" PID="PID1">
<Name SN="111" PID="P01" />
<Name SN="222" PID="P02" />
</Name >
<Name SN="PQR" PID="PID2">
<Name SN="100" PID="P04" />
<Name SN="200" PID="P05" />
<Name SN="300" PID="P05" />
<Name SN="400" PID="P06" />
</Name >
</Result>`
查询:
SELECT XXCSS_AUTOTEST_INPUT_OBJ (
SUBSTR (
EXTRACT (VALUE (P), '/Device').getstringval (),
INSTR (
EXTRACT (VALUE (P), '/Device').getstringval (),
'"',
1,
1)
+ 1,
INSTR (
EXTRACT (VALUE (P), '/Device').getstringval (),
'"',
1,
2)
- INSTR (
EXTRACT (VALUE (P), '/Device').getstringval (),
'"',
1,
1)
- 1),
SUBSTR (
EXTRACT (VALUE (P), '/Device').getstringval (),
INSTR (
EXTRACT (VALUE (P), '/Device').getstringval (),
'"',
1,
5)
+ 1,
INSTR (
EXTRACT (VALUE (P), '/Device').getstringval (),
'"',
1,
6)
- INSTR (
EXTRACT (VALUE (P), '/Device').getstringval (),
'"',
1,
5)
- 1))
BULK COLLECT INTO p_auto_test_out
FROM TABLE (
XMLSEQUENCE (EXTRACT (l_xml_file, '//Result/Device'))) P;
我能够读取前两个标签 ABC 和 PQR,但无法读取子标签。
【问题讨论】:
-
错误是什么?你也可以发布你的sql吗?
-
感谢您的回复。我正在使用下面的 SQL