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

4/28/2009来源:Oracle教程人气:8447

浅谈如何将Oracle导出到xml文件这里我们将简单谈一谈如何将Oracle导出到XML文件中,包括存放和调用的过程。XML的应用十分广泛,基于XML的数据处理也是开发的热点。
以下操作在Oracle9i、10g版本成功
步骤一:创建存放XML文件的目录对象
SQL>createorreplacedirectoryexp_diras’/opt’;/
–注意此目录要有oracle用户的写权限
步骤二:创建过程生成xml文件的主过程
SQL>createorreplacePRoceduretable2xml(result inoutnocopyclob,
filenameinvarchar2)is
xmlstr varchar2(32767);
line varchar2(2000);
fhandle utl_file.file_type;
begin
fhandle := 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;/步骤三:调用此过程
declare
queryctx dbms_xmlquery.ctxType;
result clob;
begin
queryctx := dbms_xmlquery.newContext(’select user_id,user_name from lq_xml_test’);–存放查询记录集的SQL
result := dbms_xmlquery.getXML(queryctx);
table2xml(result,’table2xml.xml’);
dbms_xmlquery.closeContext(queryctx);
end;