`

oracle存储过程生成xml文件

 
阅读更多
create or replace procedure table2xml is
  cursor  person_cur is select * from people;
  person_data people%rowtype;
  doc  xmldom.DOMDocument;
  main_node xmldom.DOMNode;
  root_node xmldom.DOMNode;
  item_node xmldom.DOMNode;
  person_node xmldom.DOMNode;
  root_elem xmldom.DOMElement;
  item_elem xmldom.DOMElement;
  item_text xmldom.DOMText;
begin
  open  person_cur;
  doc := xmldom.newDOMDocument;--创建文档对象
  main_node := xmldom.makeNode(doc);--读取文档节点
  root_elem := xmldom.createElement(doc,'people'); --添加一个元素(节点)
  root_node := xmldom.appendChild(main_node,xmldom.makeNode(root_elem));
 
  loop
    fetch person_cur into  person_data;
    exit when person_cur%notfound;
   
    item_elem := xmldom.createElement(doc,'peopleNo'); --添加 peopleNo 元素
    xmldom.setAttribute(item_elem,'peopleID',person_data.personid);--添加peopleNo 属性
    person_node:= xmldom.appendChild(root_node,xmldom.makeNode(item_elem));--添加为文档的子节点

   
    item_elem :=xmldom.createElement(doc,'name');
    item_node :=xmldom.appendChild(person_node,xmldom.makeNode(item_elem));
    item_text :=xmldom.createTextNode(doc,person_data.name); --设置元素的值
    item_node :=xmldom.appendChild(item_node,xmldom.makeNode(item_text));  --把该值加入该节点中
   
    item_elem :=xmldom.createElement(doc,'address');
    item_node :=xmldom.appendChild(person_node,xmldom.makeNode(item_elem));
    item_text :=xmldom.createTextNode(doc,person_data.address); --设置元素的值
    item_node :=xmldom.appendChild(item_node,xmldom.makeNode(item_text));  --把该值加入该节点中
   
    item_elem :=xmldom.createElement(doc,'tel');
    item_node :=xmldom.appendChild(person_node,xmldom.makeNode(item_elem));
    item_text :=xmldom.createTextNode(doc,person_data.tel); --设置元素的值
    item_node :=xmldom.appendChild(item_node,xmldom.makeNode(item_text));  --把该值加入该节点中
   
    item_elem :=xmldom.createElement(doc,'fax');
    item_node :=xmldom.appendChild(person_node,xmldom.makeNode(item_elem));
    item_text :=xmldom.createTextNode(doc,person_data.fax); --设置元素的值
    item_node :=xmldom.appendChild(item_node,xmldom.makeNode(item_text));  --把该值加入该节点中
   
    item_elem :=xmldom.createElement(doc,'email');
    item_node :=xmldom.appendChild(person_node,xmldom.makeNode(item_elem));
    item_text :=xmldom.createTextNode(doc,person_data.emall); --设置元素的值
    item_node :=xmldom.appendChild(item_node,xmldom.makeNode(item_text));  --把该值加入该节点中
   
  end loop;
  xmldom.writeToFile(doc,'e:\person.xml');
  xmldom.freeDocument(doc);
  close person_cur;
end;
分享到:
评论

相关推荐

    pb中执行oracle存储过程脚本

    pb中执行oracle存储过程脚本; 使用批处理进行oracle存储过程脚本的创建和更新的处理。 此程序在pb中进行实现;

    Oracle自动生成hibernate实体(.java 和.hbm.xml文件)存储过程

    Oracle自动生成hibernate实体 首先需要有个表A0,然后以要生成实体的表名称为参数执行存储过程,生成的结果就在A0表里。

    groovy将JDBC中oracle存储过程游标转换为多层json

    本例是我工作中的一些实操例子,亦是我工作日志,记录在此,既可作为我自己的总结,也可以此分享给同行借鉴。...2.创建oracle存储过程脚本 3.JDBC调用存储过程语句 4.创建Groovy脚本 5.xml入参示例 6.json出参示例

    C# oracle存储过程的webservice

    使用C#对oracle建立的存储过程进行封装,封装格式为XML,本源码为医院系统实际运行源码

    Oracle 入门文档2

    Oracle 入门文档 Oracle笔记 一、oracle的安装、sqlplus的使用 Oracle笔记 二、常用dba命令行 Oracle笔记 三、function 、select Oracle笔记 四、增删改、事务 ...Oracle笔记 十四、查询XML操作、操作系统文件

    Oracle XML DB之浅入浅出

    1 XML DB安装 通过DBCA安装 2 XML DB数据处理 2.1 存储XML数据到XML表中 2.1.1创建一个有XMLType类型字段的表: create table xmlcontent (keyvalue varchar2(10) primary ...2.1.3从XML文件中读取数据存储到XML表中

    Oracle 入门文档

    Oracle 入门文档 Oracle笔记 一、oracle的安装、sqlplus的使用 Oracle笔记 二、常用dba命令行 Oracle笔记 三、function 、select Oracle笔记 四、增删改、事务 ...Oracle笔记 十四、查询XML操作、操作系统文件

    Sqlserver 采用xml入参获取检查报告存储过程和函数

    创建sqlserver存储过程给第三方公司调用获取对应检查报告记录的需求,如果是oracle数据库的话,其实也可以参考oracle的语法将本文转换下,因为本文的原生脚本就是来自于oracle,读者略微研究下就明白,语法大同小异...

    oracle利用UTL-HTTP包访问SOAP、HTTP接口并通过管道函数解析xml响应文件用游标以表方式输出

    1.楼主所在公司有个业务需求是需要访问地方医保局发布的一个DRGs查询SOAP接口,POST入参,同时获取接口返回数据。...三、创建访问soap/http接口,并解析xml的存储过程 四、响应报文用例,可用于调试管道函数

    oracle database 10g 完整参考手册part1

    第39章 Java存储过程 第40章 Oracle真正应用群集 第41章 网格体系结构和管理 第Ⅷ部分 指南 第42章 Oracle数据字典指南 第43章 调整应用程序和SQL旅行者指南 第44章 调整中的案例分析 第45章 Oracle Application ...

    oracle数据库数据同步

    压缩包中包含的文件:数据库建表、存储过程(生成指定格式的字符串,供后台服务写文件)、数据同步的后台服务,三个文件; 希望对刚好有这需求的人有帮助,同时也欢迎指正程序中的不足,共同进步。

    xml-sample-demo:Oracle数据库XMLDB代码示例

    xml-sample-demo存储库包含一组针对Oracle XML DB的可下载和可安装的演示。 每个演示都可以独立于其他任何演示进行安装。 每个演示在xml-sample-demo存储库中都有其自己的文件夹。 但是,为了安装和运行任何演示,...

    SqlServer,Oracle,MySql数据库结构相互对比同步, 代码生成,Word表格生成Model,文本对比,格式化文本

    oracle,MySql ,代码差异高亮显示 具体功能 介绍博客有图片 :https://blog.csdn.net/wwja_chen/article/details/89336728 如开发库和正式库之间的结构和数据同步,此工具可以告诉您哪个表结构有字段的增加减少,存储...

    asp.net_spring_nhibernate_oracle

    asp.net_spring_nhibernate_oracle 网上关于在.net开发的例子不多,这个例子能跑,遗憾的是,nhibernate在存储过程不完美,在oracle 传回多结果集,只能接受到第一个,官网上也是这样说的。 提示:开发前,先将...

    O r a c l e与X M L

    这一章涵盖了iFS的体系结构,它作为XML文件系统的行为特性,以及它怎样在内部使用XML来把文件数据映射到关系模式。本章中还包括了关于通用文件操作的几个代码实例。第6章涵盖了Oracle8i的文本搜索引擎—interMedai ...

    XML 讲解和分析

     XML与Access,Oracle和SQL Server等数据库不同,数据库提供了更强有力的数据存储和分析能力,例如:数据索引、排序、查找、相关一致性等,XML仅仅是展示数据。事实上XML与其他数据表现形式最大的不同是:他极其简单...

    oracle database 11g 高清完整中文版part2

    第ⅰ部分 关键的数据库概念  第1章 oracle database 11g 体系结构  第2章 安装oracle database 11g 和创建数据库  第3章 升级到oracle ... 第52章 oracle 中的xml 指南 第ⅷ部分 附 录 附录a 命令和术语参考

    Oracle9i 对象关系技术

    XML 生成 XML 存储 对象关系技术的 JDeveloper 支持 Oracle Business Components for Java Container Managed Persistence 使用 Oracle9i 对象 映射 Oracle 对象类型至 CMP 字段 JPublisher 向导 部署面向对象应用...

    ORACLE SQL PLSQL

    2. 在数据库中生成和完全地管理xml文档。 3. web页面与数据库的结合。 4. 实现自动化的数据库管理,用pl/sql建立安全级别来管理回滚段。 1-2 pl/sql特点: 从oracle 6 开始,模仿Ada 语言的实现,Ada 语言强调数据...

Global site tag (gtag.js) - Google Analytics