加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

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

发布时间:2020-12-12 14:10:43 所属栏目:百科 来源:网络整理
导读:一、从oracle到xml 1. 启动sqlplus执行 (1) 获取导出表的所有字段: 替换语句中 TABLE_NAME,OWNER 为需要导出的 表名及表的用户名, 修改语句后在sqlplus中执行(执行用户需要有dba权限) SELECTreplace(wm_concat(cols),','||')FROM(SELECT''''||''||COLUMN

一、从oracle到xml

1. 启动sqlplus执行>

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

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

SELECTreplace(wm_concat(cols),','||')FROM(
SELECT''''||'<'||COLUMN_NAME||'>'||''''||'||'||column_name||'||'||''''||'<'||column_name||'/>'||''''
AScolsFROMDBA_COL_COMMENTSWHERETABLE_NAME='DEPT'ANDowner='SCOTT');


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

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

setcolsep,setfeedbackoff
setheadingoff
settrimouton
spool/home/oracle/dept.xml

SELECT'<?xmlversion="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>'ASdept_info
FROMSCOTT.DEPT);

spooloff
exit

注释:

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

select语句指定导出表及字段

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

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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读