当前位置: 首页 > 图文教程 > XML家族 > XML > 浅谈如何将Oracle导出到XML文件

XML
XML简易教程之四
XML与HTML的结合(上)
XML与HTML的结合(下)
XML入门的常见问题(一)
XML入门的常见问题(二)
XMLHTTP资料
什么是XML
什么是 XML Web Service
XML正在接管Web服务 成为SOA的基础
怎么样在网页上读取远程xml的数据
XML教程—编写结构完整的XML文档
读写xml文件的2个小函数
XML文档的基本操作
初学者如何开发出一个高质量的J2EE系统
优化 JavaScript 代码
自动更新程序的设计框架
使Firefox对XML的处理兼容IE的节点处理方法
WML学习之四 锚和任务
WML学习之五 显示表单
WML学习之六 事件

浅谈如何将Oracle导出到XML文件


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 148 ::
收藏到网摘: n/a

以下操作在Oracle9i、10g版本成功

  步骤一:创建存放XML文件的目录对象

  SQL>createorreplacedirectoryexp_diras'/opt';/

  --注意此目录要有oracle用户的写权限

  步骤二:创建过程生成xml文件的主过程

  SQL>createorreplaceproceduretable2xml(result inoutnocopyclob,filenameinvarchar2)isxmlstr varchar2(32767);line varchar2(2000);fhandle utl_file.file_type;beginfhandle := utl_file.fopen('EXP_DIR', filename,'w');xmlstr := dbms_lob.substr(result,32767);loopexitwhenxmlstrisnull;line := substr(xmlstr,1, instr(xmlstr, chr(10)) -1);dbms_output.put_line('| '|| line);utl_file.put_line(fhandle, line);xmlstr := substr(xmlstr, instr(xmlstr, chr(10)) +1);endloop;utl_file.fclose(fhandle);end;/

  步骤三:调用此过程

  declarequeryctx dbms_xmlquery.ctxType;result clob;beginqueryctx := dbms_xmlquery.newContext('select user_id,user_name from lq_xml_test');

  --存放查询记录集的SQLresult := dbms_xmlquery.getXML(queryctx);table2xml(result,'table2xml.xml');dbms_xmlquery.closeContext(queryctx);end;/