ORACLE下把查询的结果以xml输出

本文介绍了一个Oracle存储过程,用于将查询结果转换为XML格式并输出到文件。示例包括从XML文件导入数据到Stockmarket表,以及将SQL查询结果导出为XML文件的存储过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

输入:
/*****************************************************************************
过程名称:add_to_stockmarket
参数1:fileName   in   varchar2   接收用户输入的xml文件名
功能:将xml文件中的数据导入到Stockmarket数据表中
*****************************************************************************/
create   or   replace   procedure   add_to_stockmarket(fileName   IN   varchar2)   as
document   xmldom.DOMDocument;--声明文档对象模型
subelement   xmldom.DOMElement;--声明元素类型
nodelistStock   xmldom.DOMNodeList;
nodelistStockChild   xmldom.DOMNodeList;
stock_code   char(6);--stock字段
stock_name   varchar2(30);--stockname字段
stock_shortname   varchar(30);--stockshortname字段
stock_buydate   date;--stockbuydate字段
recordCountOuter   number;--存储xml文档中stock元素的个数
quantity   exception;
begin

document:=xmlparser.parse(fileName);--解析xml文档
subelement:=xmldom.getDocumentElement(document);--获得根元素
nodelistStock:=xmldom.getElementsByTagName(subelement, 'Stock ');
recordCountOuter:=xmldom.getLength(nodelistStock);
for   outerCycle   in   0..recordCountOuter-1   loop--循环记录信息
nodelistStockChild:=xmldom.getChildNodes(xmldom.item(nodelistStock,outerCycle));
if   xmldom.getLength(nodelistStockChild) <> 4   then
raise   quantity;
end   if;
stock_code:=xmldom.getNodeValue(xmldom.getFirstCh

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值