目前找的oracle解析xml的资料都是类似这样的:定义省略.......
.
.
.
.--遍历所有unit元素   FOR i in 0..lenUnit-1   LOOP--获取第i个unit     tempNode_unit := xmldom.item( unitNodes, i );          itemNodes:=xmldom.getChildNodes(tempNode_unit);      lenItem := xmldom.getLength( itemNodes );     FOR j in 0..lenItem-1     LOOP         tempNode := xmldom.item( itemNodes, j );              --获取子元素的值         chilNodes := xmldom.getChildNodes(tempNode);         tmp := xmldom.GETLENGTH( chilNodes );         l_name := xmldom.getNodeValue(xmldom.getFirstChild(xmldom.item( chilNodes, 0 )));         l_value := xmldom.getNodeValue(xmldom.getFirstChild(xmldom.item( chilNodes, 1 )));          DBMS_output.PUT_LINE(i||j,name,value);       end loop;   END LOOP;标红的两句就是最终解析出来的节点值,但是这是按照几点的位置来解析的,取子节点的第几个,第几个,假设子节点的个数不确定,各个值的位置不确定,这样按位置解析出来的值就不明确到底哪个是哪个了,我想要按照节点名称来解析,不知道能如何实现?假设我有一个节点名称叫 'Stand',有没有类似这样的方法:l_name := xmldom.getNodeValue(xmldom.getFirstChild(xmldom.item( chilNodes, 'Stand' )));小弟这里拜谢了!!!!
我的qq:527276920OracleXML