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

XML
XML(一)
一日精通Ajax技术
使用XML文件记录操作日志
XMLHTTP对象封装技术
轻松使用DOM 的技巧和诀窍
如何生成XML数据
使用xml作为数据源,让asp:Menu类自由扩展菜单项
使用PHP和AJAX的XML编程(4)
使用PHP和AJAX的XML编程(3)
使用PHP和AJAX的XML编程(2)
使用PHP和AJAX的XML编程(1)
Web 2.0 编程思想:16条法则
如何用ASP生成XML数据文档
在SQLServer中用XQuery分解XML数据
巧用XML做多语言界面的FLASH
XML文档搜索使用小结
XML入门指南(1)XML简介
xml中的空格之完全解说
为何XML对Web服务很重要
XML数据库中几个容易混淆的概念

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 155 ::
收藏到网摘: 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;/