首页 > 数据库 >oracle获取xml节点数据

oracle获取xml节点数据

时间:2023-09-14 17:45:18浏览次数:34  
标签:xml valueReturn itemNodes xDoc xmldom oracle xmlparser 节点

1.新增获取节点函数

CREATE OR REPLACE FUNCTION get_xml_nodeValue(xmlStr CLOB,
nodeName VARCHAR2)
RETURN VARCHAR2 IS

xmlPar xmlparser.Parser := xmlparser.newParser;
xDoc xmldom.DOMDocument;
lenItme INTEGER;
itemNodes xmldom.DOMNodeList;
itemNode xmldom.DOMNode;
valueReturn VARCHAR2(100);
BEGIN
xmlparser.parseClob(xmlPar, xmlStr);
xDoc := xmlparser.getDocument(xmlPar);
xmlparser.freeParser(xmlPar);
itemNodes := xmldom.getElementsByTagName(xDoc, nodeName);
lenItme := xmldom.getLength(itemNodes);
IF lenItme = 0 THEN
valueReturn := '';
ELSE
itemNode := xmldom.item(itemNodes, 0);
valueReturn := xmldom.getNodeValue(xmldom.getFirstChild(itemNode));
END IF;
xmldom.freeDocument(xDoc);
RETURN valueReturn;
END get_xml_nodeValue;

2plsql直接用法

select get_xml_nodeValue(b.content, 'PATIENT_ID')

from xxxxx b

标签:xml,valueReturn,itemNodes,xDoc,xmldom,oracle,xmlparser,节点
From: https://www.cnblogs.com/baitaimaihuiyi/p/17703011.html

相关文章

  • 三节点master修改apiserver端口
    因业务需求,需要把apiserver的6443端口改成其它端口,k8s集群是二进制部署的,有三个master节点,调整方法如下1.修改apiserver启动service中的配置查看apiserver的service文件位置systemctlstatuskube-apiserver,找到/usr/lib/systemd/system/kube-apiserver.service修改--secure-p......
  • oracle 分页 sql
    select*from(select*from(selectt.*,rownumlinenumfromgal_messagest)rwherer.linenum<200)awherea.linenum>100Note:一定要给rownum一个别名linenum,否则r.rownum或a.rownum会出错.OracleConnectBy用法参照:[url]http://www.cublog.cn/u1/54706/showart......
  • oracle数据库使用to_timestamp格式化日期数据时,报错: ORA-01821: date format not reco
    今天偶然发现一个问题:我使用的数据库是11.2版本的sql语句:SELECTto_timestamp('2023-09-1315:43:29.943','yyyy-mm-ddhh24:mi:ss.fff')ASmydataFROMdual就会报错,项目出现问题,但很神奇的时使用oracle数据库12版本的就不会报错。 网上查了下,说是毫秒处是6位的,但只显示3位......
  • oracle中sql语句运行缓慢如何处理
    查看执行计划,查看句子消耗的资源和内部运行的逻辑,给数据量非常大的表格建立分区,查看有没有导致索引失效的语句,语句频繁对硬盘进行读写,可以将语句写成代码块(存储过程),减少硬盘I/O次数,使用优化器进行并行处理。当Oracle中的SQL语句运行缓慢时,可以采取以下几种处理方法:优化SQL语句:通过......
  • java的配置类 取代xml配置文件
    配置类以及对注解@Value的使用//TODO:创建java的配置类取代xml配置文件@Configuration//配置类注解@ComponentScan({"com.wind.dao","com.wind.service"})//包扫描注解配置可存入多个包@PropertySource(value="classpath:jdbc.properties")//引用外部文件......
  • 过滤树,返回符合条件的节点以及它的上级节点,以及是否保留它的下级节点
    constfilterReceiveDeptTree=computed(()=>{if(state.filterText){letdeepclone=deepClone(state.receiveDeptTree);constfilteredTree=filterTree(deepclone,(node)=>{returnnode......
  • oracle部署报错解决
    第1个错误: ./runInstaller-silent-responseFile/tmp/db_install.rsp-ignorePrereq /home/u01/app/oracle/product/19.3.0/dbhome_1/perl/bin/perl:errorwhileloadingsharedlibraries:libnsl.so.1:cannotopensharedobjectfile:Nosuchfileordirectory  yum......
  • Oracle 按字段排序
    1.单一字段排序在Oracle数据库中,我们可以通过ORDERBY子句来对查询结果进行排序。ORDERBY子句的基本语法如下:SELECTcolumn_name(s)FROMtable_nameORDERBYcolumn_name[ASC|DESC];SELECT*FROMstudentORDERBYageASC;2.多字段排序SELECT*FROMstudent......
  • Oracle数据泵定时备份Windows
    Windows上Oracle设置定时任务数据泵全备数据库,将备份文件传输至Linux系统备份目录下参考文档1.为输出路径建立一个数据库的directory对象。登录windows数据库创建一个expdp导出本地的路径sqlplus/assysdbacreatedirectorydumpfullas'd:\bakup';2.windows服务器上创建备份脚......
  • C# JSON字符串转带头(声明)XML字符串
     privatestringConverXml(stringmemberId,intcode,stringmsg)    {      varresp=new{authenticate=new{member_id=memberId,status_code=code,message=msg}};      varjsonstr=JsonConvert.SerializeObject(re......