使用sql脚本把数据导出为.txt文件

来源:互联网 发布:投稿源码 编辑:程序博客网 时间:2024/05/12 06:18

sql脚本部分

  /***************************
  * sql脚本部分 demo.sql begin
  **************************/
   
  //##--markup html:html格式输出,缺省为off
  
  //##--autocommit:自动提交insert、update、delete带来的记录改变,缺省为off
  
  //##--define:识别命令中的变量前缀符,缺省为on,也就是'&',碰到变量前缀符,后面的字符串作为变量处理.
  
  set colsep' ';            //##--域输出分隔符
  
  set echo off;              //##--显示start启动的脚本中的每个sql命令,缺省为on
  
  set feedback off;            //##--回显本次sql命令处理的记录条数,缺省为on
  
  set heading off;             //##--输出域标题,缺省为on
  
  set pagesize 0;             //##--输出每页行数,缺省为24,为了避免分页,可设定为0。
  
  set linesize 80;             //##--输出一行字符个数,缺省为80
  
  set numwidth 12;             //##--输出number类型域长度,缺省为10
  
  set termout off;             //##--显示脚本中的命令的执行结果,缺省为on
  
  set timing off;   //##--显示每条sql命令的耗时,缺省为off
  
  set trimout on;             //##--去除标准输出每行的拖尾空格,缺省为off
  
  set trimspool on;            //##--去除重定向(spool)输出每行的拖尾空格,缺省为off
  
  spool C:/data/dmczry.txt;
  
  select trim(czry_dm),trim(swjg_dm),trim(czry_mc) from dm_czry;
  
  spool off;
  
  EOF
  
  /***********************
  * demo.sql end
  ***********************/

示例脚本文件下载

sql脚本的执行

假设demo.sql文件的存放路径为:OraHome/demo.sql
在SQL*Plus中使用如下语句执行demo.sql:
@/OraHome/demo.sql;

执行结果

使用数据库系统表sh.costs时,可以得到预想结果。即以逗号分隔符的形式存放在txt文件中。
但是使用一个自建表时结果却出现每个列都回车换行,原因未明。