Oracle spool格式化数据使用

2014-11-24 18:17:06 · 作者: · 浏览: 0

spool 本来是很好用的,但是在格式化数据上 ,不太熟悉set命令,于是网上找了下,在此备注下:


SQL>set colsep' '; //-域输出分隔符


SQL>set newp none //设置查询出来的数据分多少页显示,如果需要连续的数据,中间不要出现空行就把newp设置为none,这样输出的数据行都是连续的,中间没有空行之类的


SQL>set echo off; //显示start启动的脚本中的每个sql命令,缺省为on


SQL> set echo on //设置运行命令是是否显示语句


SQL> set feedback on; //设置显示“已选择XX行”


SQL>set feedback off; //回显本次sql命令处理的记录条数,缺省为on即去掉最后的 "已经选择10000行"


SQL>set heading off; //输出域标题,缺省为on 设置为off就去掉了select结果的字段名,只显示数据


SQL>set pagesize 0; //输出每页行数,缺省为24,为了避免分页,可设定为0。


SQL>set linesize 80; //输出一行字符个数,缺省为80


SQL>set numwidth 12; //输出number类型域长度,缺省为10


SQL>set termout off; //显示脚本中的命令的执行结果,缺省为on


SQL>set trimout on;//去除标准输出每行的拖尾空格,缺省为off


SQL>set trimspool on;//去除重定向(spool)输出每行的拖尾空格,缺省为off


SQL>set serveroutput on; //设置允许显示输出类似dbms_output


SQL> set timing on; //设置显示“已用时间:XXXX”


SQL> set autotrace on-; //设置允许对执行的sql进行分析


set verify off //可以关闭和打开提示确认信息old 1和new 1的显示.




sqlplus /nolog @d:\sp.sql


d:\sp.sql内容如下:


set head off


set headsep off


set newp none


set linesize 100


set pagesize 10000


set sqlblanklines OFF


set trimspool ON


set termout off


set feedback off


spool d:\export.txt


select NODECODE||'&'||NODETYPE||'&'||NODENAME||'&' from "000".tbnode;


spool off


exit