博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
oracle表数据导出为文本形式
阅读量:4982 次
发布时间:2019-06-12

本文共 1335 字,大约阅读时间需要 4 分钟。

oracle表数据导出文本数据(xls或txt)
今天试验了两种方法,记录如下
1.第一种方法:采用utl_file包
如下过程即可实现某表数据的导出
CREATE OR REPLACE PROCEDURE p_tabletoxls IS
   v_file utl_file.file_type;
   CURSOR cur_emp IS
      SELECT ename, deptno FROM emp;
BEGIN
   IF utl_file.is_open(v_file) THEN
      utl_file.fclose(v_file);
   END IF;
   v_file := utl_file.fopen('UTL_FILE_DIR', 'emp.xls', 'w');
   FOR i IN cur_emp LOOP
      utl_file.put_line(v_file, i.ename || chr(9) || i.deptno); --chr(9)即字段换列
   END LOOP;
   utl_file.fclose(v_file);
EXCEPTION
   WHEN OTHERS THEN
      dbms_output.put_line(SQLERRM); --写入数据
      IF utl_file.is_open(v_file) THEN
         utl_file.fclose(v_file);
      END IF;
END p_tabletoxls;
注:ULT_file包的使用要先创建一个目录存放数据
create or replace directory UTL_FILE_DIR as 'D:\dir';
grant read,write on directory UTL_FILE_DIR to ltwebgis;
2.第二种方法:采用ociuldr工具
先下载该工具,如下所示:
D:\ociuldr\ociuldr>ociuldr user=username/username@orcl query="SELECT ename, deptno FROM emp"
field=0x20 record=0x0a file=emp.xls
命令说明:
user  = username/password@tnsname
sql   = SQL file name, one sql per file, do not include ";"
query = select statement
field = seperator string between fields
record= seperator string between records
file  = output file name(default: uldrdata.txt)
field=0x20 表示字段间用空格表示,也可以写成field=' '。         
field=0x09 表示字段间用分列表示,即在excel导出时直接就按列导出了。如果采用别的分隔符导出后在excel只有一列,可以采用excel进行分列。

转载于:https://www.cnblogs.com/lanzi/archive/2012/07/27/2611623.html

你可能感兴趣的文章
解决Win7下网络应用只有进程没有界面的问题
查看>>
半监督学习(一)
查看>>
[置顶] SPL讲解(6)--Condition篇
查看>>
在MyEclipse中配置Weblogic10服务器
查看>>
浙江大学PAT上机题解析之2-11. 两个有序链表序列的合并
查看>>
java中equals和==的区别详解
查看>>
数据类型(字符串)
查看>>
Something about Swing
查看>>
设计模式看了又忘,忘了又看?
查看>>
hdu4465 2012 Asia Chengdu Regional Contest 概率期望计算+对数放大/缩小幂指数+对数还原...
查看>>
安装magento主题模板
查看>>
JZOJ.4732 函数
查看>>
Linux:重命名
查看>>
Common Subsequence--poj1458(最长公共子序列)
查看>>
Sql Server2000分页存储过程
查看>>
quagga源码分析--通用库thread
查看>>
TJU_SCS_软件测试_homework1——《error impressed me most》
查看>>
样例功能截图
查看>>
log4j2 Filter用法详解
查看>>
关于sql当中的isnull和ifnull的区别
查看>>