【原创】spool方式导出表数据到文…

                             spool方式导出表数据到文本
                                          2013/11//11
一、介绍
利用Oracle中的Spool缓冲池技术可以实现Oracle数据导出到文本文件。要注意是SPOOL是SQLPLUS的命令,不是SQL语法。
二、操作步骤
1、设置SET选项,这里进行一些环境的设置。
一般设置:
set colsep' ';    //域输出分隔符 
set echo off;    //显示start启动的脚本中的每个sql命令,缺省为on 
set feedback off;  //回显本次sql命令处理的记录条数,缺省为on 
set heading off;   //输出域标题,缺省为on 
set pagesize 0;   //输出每页行数,缺省为24,为了避免分页,可设定为0。 
set termout off;   //显示脚本中的命令的执行结果,缺省为on 
set trimout on;   //去除标准输出每行的拖尾空格,缺省为off 
set trimspool on;  //去除重定向(spool)输出每行的拖尾空格,缺省为off 
2、在Oracle PL/SQL 中输入缓冲开始命令,并指定输出的文件名:
   spool d:\output.txt
3、在命令行中随便输入你的查询:
   select mobile from customer;
   select mobile from client;
   ……
   --可以在select语句中指定输出格式。
4、在命令行中输入缓冲结果命令:
   spool off;
则系统将缓冲池中的结果都输出到"output.txt"文件中。
附set选项:
set colsep'     --域输出分隔符
set echo off;       --显示start启动的脚本中的每个命令,缺省为on
set echo on         --设置运行命令是是否显示语句
set feedback off;   --不显示本次命令处理的记录条数,缺省为on
set heading off;   --输出列标题,缺省为on
set pagesize 0;    --输出每页行数,缺省为24,为了避免分页,可设定为0。
set linesize 80;    --输出一行字符个数,缺省为80
set numwidth 12;    --输出number类型域长度,缺省为10
set termout off;    --显示脚本中的命令的执行结果,缺省为on
set trimout on;     --去除标准输出每行的拖尾空格,缺省为off
set trimspool on;    --去除重定向(spool)输出每行的拖尾空格,缺省为off
set serveroutput on;  --设置允许显示输出类似dbms_output
set timing on;   --设置显示“已用时间:XXXX”
set autotrace on;   --设置允许对执行的进行分析
set verify off    --可以关闭和打开提示确认信息old 1和new 1的显示.
set wrap on/off   -- 查询返回的纪录每行超过默认宽度时,可选择换行(on)或不换行(off),默认为换行;
set linesize N     --设置查询返回的纪录每行的宽度,超过这个宽度则截掉,不过这个宽度则补空格。
-----------------------------------------------------------------

例子:
--将scott用户下的emp表输出到d盘下的out.txt文件中。
set colsep' ';   
set echo off;    
set feedback off;  
set heading on;  
set pagesize 0;    
set termout off;  
set trimout on;   
set trimspool on;  
spool d:\out.txt
select * from emp;
spool off;
如果要进行格式的设定,可以在select语句中设定。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值