oracle的PL/SQL中如何根据节点名称直接获取xml某个节点的值

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle的PL/SQL中如何根据节点名称直接获取xml某个节点的值相关的知识,希望对你有一定的参考价值。

比如有如下的xml:
<?xml version="1.0" encoding="GBK"?>
<SERVICE>
<IDA_SVR_USERBILL>
<CALL_METHOD>queryProcessStepList</CALL_METHOD>
</IDA_SVR_USERBILL>
</SERVICE>
我在pl/sql中如何获取CALL_METHOD节点的值?用哪个方法?

参考技术A 用XPath比较简单点.也可以用xmldom.
xmltype('<?xml version="1.0" encoding="GBK"?>
<SERVICE>
<IDA_SVR_USERBILL>
<CALL_METHOD>queryProcessStepList</CALL_METHOD>
</IDA_SVR_USERBILL>
</SERVICE>').extract('//CALL_METHOD/child::text()').getstringval()
测试:
SELECT xmltype('<?xml version="1.0" encoding="GBK"?>
<SERVICE>
<IDA_SVR_USERBILL>
<CALL_METHOD>queryProcessStepList</CALL_METHOD>
</IDA_SVR_USERBILL>
</SERVICE>').extract('//CALL_METHOD/child::text()').getstringval()
FROM dual;

如果要xmldom
你可以参考我这个报表的写法:
http://www.skyz.cn/?p=364本回答被提问者采纳

以上是关于oracle的PL/SQL中如何根据节点名称直接获取xml某个节点的值的主要内容,如果未能解决你的问题,请参考以下文章

Oracle PL/SQL查询结果如何自动换行

如何配置pl/sql 连接远程oracle服务器

如何安装pl/sql developer

Oracle中使用PL/SQL怎样用循环插入多条数据?

oracle PL/SQL语句题目求教!

pl/sql developer 提示信息乱码