码迷,mamicode.com
首页 > 数据库 > 详细

oracle导出结果集为xml格式文件

时间:2017-12-13 11:52:14      阅读:243      评论:0      收藏:0      [点我收藏+]

标签:oracle   导出   xml   

一、从oracle到xml

 

1.  启动sqlplus执行>

(1)获取导出表的所有字段:

 替换语句中TABLE_NAME,OWNER为需要导出的表名及表的用户名,修改语句后在sqlplus中执行(执行用户需要有dba权限) 

SELECT replace(wm_concat(cols),',','||') FROM (
SELECT ''''|| '<'||COLUMN_NAME||'>'||''''||'||'||column_name||'||'||''''||'<'||column_name||'/>'||''''
AS cols FROM DBA_COL_COMMENTS WHERE TABLE_NAME ='DEPT'AND owner= 'SCOTT') ;


2.  新建脚本xml.sql文件,脚本内容如下:

将以下语句中<ROW>到||'<ROW>'之间的内容替换为步骤1中的执行结果SCOTT.DEPT修改为步骤1中的用户名及表名,修改后在sqlplus中执行此语句

set colsep ,  
set feedback off  
set heading off  
set trimout on  
spool /home/oracle/dept.xml
  
SELECT '<?xml version="1.0" ?>
<ROWDATA>
'||replace(wm_concat(dept_info),',',' ')||'
</ROWDATA>'
  
FROM (
SELECT '
<ROW>
    <C0>'||ROWNUM||'</C0>'||    '<DEPTNO>'||DEPTNO||'<DEPTNO/>'||'<DNAME>'||DNAME||'<DNAME/>'||'<LOC>'||LOC||'<LOC/>'
||'</ROW>' AS dept_info
FROM SCOTT.DEPT );
  
spool off  
exit

注释:

spool /home/oracle/dept.xml  --指定导出xml文件路径及文件名(可修改)

select语句指定导出表及字段

 

3.  导出结果为xml格式(执行用户需要拥有导出表的select权限)

sqlplus -s 用户名/密码@数据库名 @/路径/xml_auto.sql 


oracle导出结果集为xml格式文件

标签:oracle   导出   xml   

原文地址:http://blog.51cto.com/mjal01/2050079

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!