create or replace procedure sys.change_xml (dir varchar2)
--节点对节点元素对元素
--DOCUMENT为最大结点
is
doc xmldom.DOMDocument;
main_node xmldom.DOMNode;
root_ele xmldom.DOMElement;
root_node xmldom.DOMNode;
item_node xmldom.DOMNode;
item_ele xmldom.DOMElement;
item_text xmldom.DOMText;
stu_node xmldom.DOMNode;
cursor student_recordes(num number) is
select rownum,sno,sname,age from student where rownum<=num;
begin
doc:=xmldom.newDOMDocument;--创建新的文档
main_node:=xmldom.makeNode(doc);--最大父结点为DOC
root_ele:=xmldom.createElement(doc,'studentes');--新建一个元素属于DOC的
root_node:=xmldom.appendChild(main_node,xmldom.makeNode(root_ele));--把元素变成结点并加在父结点之中
for stu_record in student_recordes(3) loop
/*
item_ele:=xmldom.createElement(doc,'rownum');
item_node:=xmldom.appendChild(root_node,xmldom.makeNode(item_ele));
item_text:=xmldom.createTextNode(doc,stu_record.rownum);
item_node:=xmldom.appendChild(item_node,xmldom.makeNode(item_text));
*/
item_ele:=xmldom.createElement(doc,'student');
xmldom.setAttribute(item_ele,'number',stu_record.rownum);
stu_node:=xmldom.appendChild(root_node,xmldom.makeNode(item_ele));
--------------------------------------------------------------------
item_ele:=xmldom.createElement(doc,'sno');
item_node:=xmldom.appendChild(stu_node,xmldom.makeNode(item_ele));
item_text:=xmldom.createTextNode(doc,stu_record.sno);
item_node:=xmldom.appendChild(item_node,xmldom.makeNode(item_text));
------------------------------------------------------------------------
item_ele:=xmldom.createElement(doc,'sname');
item_node:=xmldom.appendChild(stu_node,xmldom.makeNode(item_ele));
item_text:=xmldom.createTextNode(doc,stu_record.sname);
item_node:=xmldom.appendChild(item_node,xmldom.makeNode(item_text));
----------------------------------------------------------------------
item_ele:=xmldom.createElement(doc,'age');
item_node:=xmldom.appendChild(stu_node,xmldom.makeNode(item_ele));
item_text:=xmldom.createTextNode(doc,stu_record.age);
item_node:=xmldom.appendChild(item_node,xmldom.makeNode(item_text));
------------------------------------------------------------------
end loop;
xmldom.writeToFile(doc,dir);
xmldom.freeDocument(doc);
end change_xml;
/
分享到:
相关推荐
完整的Oracle xmldom解析xml入参,经过测试,可以解析,成功入到数据表中。
### Oracle使用XMLDOM包保存XML节点数据到数据库表中的实践 #### 一、背景与需求分析 在实际项目开发过程中,经常会遇到与第三方系统交互的需求。这些第三方接口往往返回的数据格式为XML。为了方便后续处理及存储...
### ORACLE操作XML函数 #### 一、XMLTYPE_instance与XPath_string 在Oracle数据库中,`XMLTYPE`是一种专门用于存储XML数据的数据类型。通过使用`XMLTYPE`字段,可以有效地管理和查询XML文档。其中,`XPath_string`...
6. **PL/SQL与XML**:Oracle的PL/SQL编程语言提供了处理XML的强大工具,如XMLDOM和XMLType方法,可以方便地创建、解析和修改XML文档。 7. **Web服务集成**:Oracle数据库可以作为Web服务的提供者和消费者,通过WSDL...
《DOM与XPath解析XML并导入Oracle数据库的深度实践》 在现代软件开发中,XML(eXtensible Markup Language)作为一种通用的数据交换格式,广泛应用于系统间的通信与数据存储。而DOM(Document Object Model)与...
### 关于用Oracle的DBMS_XMLDOM导出XML文档编码格式UTF-8的问题总结 在处理Oracle数据库中使用DBMS_XMLDOM模块创建并导出XML文档时,经常会遇到有关文档编码格式的问题,尤其是如何确保导出的XML文档采用UTF-8编码...
3. **XML索引**: 为了优化XML数据的查询性能,Oracle9i提供了多种XML索引类型,如DOM(Document Object Model)索引、XML索引路径(XPATH)索引等,这些索引可以加速XML文档的查询和处理。 4. **SQL/XML**: Oracle...
Oracle数据库系统提供了强大的XML处理能力,这主要体现在其内置的几个PL/SQL包上,如DBMS_XMLDOM、DBMS_XMLPARSER和DBMS_XMLQUERY。这些包为开发者提供了处理XML文档的一整套工具,使得在数据库环境中进行XML数据的...
6. **XML索引**:为了提高XML数据的查询速度,Oracle提供了多种XML索引类型,如DOM索引、XMLPath索引和B树索引等,这些索引可以根据XML文档的结构和内容进行优化。 7. **XML与Web服务**:Oracle数据库能够无缝地...
根据提供的文件信息,本文将对Oracle数据库中导入导出XML文件的相关知识点进行详细的解析与介绍。主要内容包括如何通过Java代码实现Oracle数据库与XML文件之间的数据交互,并深入理解所提供代码的具体功能。 ### ...
4. **DOM(文档对象模型)**:解析XML并将其表示为一个对象树,方便程序访问和修改。 5. **SAX(简单API for XML)**:事件驱动的解析方式,适用于处理大型XML文档。 6. **XSLT(可扩展样式表转换语言)**:用于将...
在本实例中,我们将深入探讨如何使用DOM4J解析XML,并利用这些数据连接Oracle数据库进行数据操作。 首先,让我们了解DOM4J的基本用法。DOM4J的主要类包括`Document`、`Element`、`Attribute`和`Namespace`。`...
使用 Oracle XML DB,开发者不再需要依赖复杂的 DOM 编程,这降低了开发和维护成本。例如,传统的 DOM 编程往往需要大量代码,而且错误率高。但是,Oracle XML DB 提供了简化的 API,减少了需要编写的代码量,降低了...
`XML编程从入门到精通.pdf`和`XML系列教程之一:XML教程.pdf`等文档会介绍XML的基本语法、DTD(文档类型定义)、XSD(XML Schema)用于验证,以及DOM(文档对象模型)、SAX(简单API for XML)解析器的使用。了解XML...
Oracle XML DB支持主要的XML标准,包括XML、命名空间、DOM、XPath、XML模式、XSL和XSLT。它提供了本地XML数据类型,允许XML数据以结构化或非结构化的方式存储在数据库中,同时还支持约束和引用完整性。这些数据类型...
### ORACLE导入与导出XML文件的技术解析 #### 标题和描述中的核心知识点 本文主要探讨了在Oracle数据库环境中如何实现XML文件的导入与导出功能,通过具体实例来解决批量处理数据的问题。XML(Extensible Markup ...
5. **解析XML配置**:在应用程序中,你需要使用Java的DOM或SAX解析器来读取和解析XML配置文件。获取到连接信息后,可以使用`java.sql.DriverManager`类的`getConnection()`方法建立数据库连接。 6. **建立数据库...
Oracle数据库系统支持对XML文件的导入和导出,这在数据迁移、备份或者与外部XML格式的数据交换中非常有用。本文将详细介绍如何在Oracle中处理XML数据,包括创建测试表、XML文件示例以及导入XML文件到数据表的存储...
在Java编程中,链接Oracle数据库并生成XML文件是一项常见的任务,尤其在数据交换、报表生成或数据备份等场景。这个过程通常涉及多个步骤,包括数据库连接、SQL查询、数据处理和XML文件的创建。以下是对这个主题的...