一、从oracle到xml
1. 启动sqlplus执行>
(1)获取导出表的所有字段:
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
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。