最近工作中,需对数据进行比对。在此之前,则需将数据导出。想到以前用过的spool命令,实验一番,分享如下:

需建SQL执行脚本,内容如下:

set feedback off   --关掉行数显示
set heading off     --关掉标题行
set termout off    --关掉终端显示
set echo off         --关掉回显
set pagesize 0     --去掉头顶的空行
set trims on        --去掉空字符
spool /home/oracle/test.txt
select * from dept;
spool off

执行该脚本,最后/home/oracle/test.txt显示的内容即为表dept的数据:

50 IT CHINA
10 ACCOUNTING NEW YORK
20 RESEARCH DALLAS
30 IT CHICAGO
40 OPERATIONS BOSTON

没有开头的SQL> select * from dept;和结尾的SQL> spool off

结合官档,总结一下SQL*Plus关于格式输出的命令:

SET ECHO {ON | OFF}                       Controls whether the START command lists each command in a script as the command is executed.

SET FEED[BACK] {6 | n | ON | OFF}    Displays the number of records returned by a query when a query selects at least n records.

SET HEA[DING] {ON | OFF}                Controls printing of column headings in reports.

SET LIN[ESIZE] {80 | n}                    Sets the total number of characters that SQL*Plus displays on one line before beginning a new line.

SET LONG {80 | n}                            Sets maximum width (in bytes) for displaying LONG, BLOB, BFILE, CLOB, NCLOB and XMLType values; and for                                                      copying LONG values.

SET PAGES[IZE] {14 | n}                   Sets the number of lines in each page.

SET TERM[OUT] {ON | OFF}               Controls the display of output generated by commands executed from a script.

SET TI[ME] {ON | OFF}                      Controls the display of the current time.

SET TIMI[NG] {ON | OFF}                   Controls the display of timing statistics.

SET TRIMS[POOL] {ON | OFF}             Determines whether SQL*Plus puts trailing blanks at the end of each spooled line.

SET TRIM[OUT] {ON | OFF}                Determines whether SQL*Plus puts trailing blanks at the end of each displayed line.

SET VER[IFY] {ON | OFF}                   Controls whether SQL*Plus lists the text of a SQL statement or PL/SQL command before and after SQL*Plus

replaces substitution variables with values.

SET WRA[P] {ON | OFF}                     Controls whether SQL*Plus truncates the display of a SELECTed row if it is too long for the current line width

PS:关于SET ECHO语句,从定义上看有点费解,下面我们来看一下实验结果:

一、 SET ECHO OFF

1> 编辑SQL脚本t1.sql如下:

set echo off

select * from dept;

2> 执行该脚本

SQL> @t1.sql

    DEPTNO DNAME      LOC
---------- -------------- -------------
50 IT CHINA
10 ACCOUNTING NEW YORK
20 RESEARCH DALLAS
30 IT CHICAGO
40 OPERATIONS BOSTON

二、 SET ECHO ON

1> 编辑SQL脚本t1.sql如下:

set echo on

select * from dept;

2> 执行该脚本

SQL> @t1.sql
SQL> select * from dept; DEPTNO DNAME LOC
---------- -------------- -------------
50 IT CHINA
10 ACCOUNTING NEW YORK
20 RESEARCH DALLAS
30 IT CHICAGO
40 OPERATIONS BOSTON

spool命令的更多相关文章

  1. spool命令、创建一个表,创建而且copy表,查看别的用户下的表,rowid行地址 索引的时候使用,表的增删改查,删除表,oracle的回收站

      1.spool命令 spool "D:\test.txt" spool off SQL> host cls 2.创建一个表 SQL> --条件(1):有创建 ...

  2. SPOOL 命令使用实例【oracle导出纯文本格式文件】

    SPOOL 命令使用实例[oracle导出纯文本格式文件] SET echo off              --在用start命令执行一个sql脚本时,是否显示脚本中正在执行的SQL语句: SET ...

  3. sqlplus 中spool命令的简单用法

    spool基本格式: spool 路径+文件名 select col1||','||col2||','||col3||','||col4||'..' from tablename; spool off ...

  4. Oracle的spool命令

    在控制台上使用spool 路径+文件名 命令可以将整个过程写入指定的文件中, 结束使用spool off 命令, 当执行spool off后文件中的内容才能看见; ed命令修改当前缓冲区的上一条命令;

  5. 使用spool命令从Oracle导出数据

    公司的网站用的是Oracle数据库,最近要导出里面的数据,使用mysql数据库 spool D:\DB\{文件名}.sql set heading off; set echo off; set fee ...

  6. Oracle中spool命令实现的两种方法比较

    ---恢复内容开始--- 要输出符合要求格式的数据文件只需在select时用字符连接来规范格式.比如有如下表 SQL>; select id,username,password from myu ...

  7. Linux:spool命令

    格式调整有以下参数: set echo on/off--是否显示脚本中的需要执行的命令 set feedback on/off--是否显示 select 结果之后返回多少行的提示 set linesi ...

  8. Oracle数据库存量数据抽取使用spool控制命令

    spool是oracle  sqlplus提供的一个控制命令.可以利用spool和select语句的组合动态生成一些失去了脚本或者一些数据. 1.spool作用: 在sqlplus中用来保存或打印查询 ...

  9. Oracle sqlplus设置显示格式命令详解

    / 运行 SQL 缓冲区 ? [关键词] 对关键词提供 SQL 帮助 @[@] [文件名] [参数列表] 通过指定的参数,运行指定的命令文件 ACC[EPT] 变量 [DEF[AULT] 值] [PR ...

随机推荐

  1. C#定时任务组件之FluentScheduler

    FluentScheduler是.NET开源处理定时任务组件 1.任务的创建注册 public static void TaskActionByMinutes(Action action, int c ...

  2. K-Means聚类算法原理

    K-Means算法是无监督的聚类算法,它实现起来比较简单,聚类效果也不错,因此应用很广泛.K-Means算法有大量的变体,本文就从最传统的K-Means算法讲起,在其基础上讲述K-Means的优化变体 ...

  3. 如何在Zabbix上安装MySQL监控插件PMP

    PMP,全称是Percona Monitoring Plugins,是Percona公司为MySQL监控写的插件.支持Nagios,Cacti.从PMP 1.1开始,支持Zabbix. 下面,看看如何 ...

  4. 【项目记录】-液化气配送app android版

    15年底参与过甲方呼叫中心平台开发.液化气配送app android版要求1个月开发完成.开发此项目以前我只有过一周android的开发经验.(与甲方签署过保密协议,遵循职业道德有些敏感信息不能写.) ...

  5. u-boot-2015.04 在tq2440上的移植(使用spl引导u-boot)

    本次移植跟以往的不同之处是采用了spl来引导u-boot,参考了博客http://blog.csdn.net/fulinus/article/details/42738641 下载链接:http:// ...

  6. request中getParameter和getAttribute的区别

    整理一下getParameter和getAttribute的区别和各自的使用范围. (1)HttpServletRequest类有setAttribute()方法,而没有setParameter()方 ...

  7. 使用ViewPager实现自动轮播

    很多APP中都实现了类似引导页的自动轮播,不由得想到昨天的引导页上修改一下代码实现轮播. 其实大体上只需要添加一个线程循环执行就可以了. 项目已同步至:https://github.com/nanch ...

  8. javascript权威指南笔记

    最近每天工作之余看下js的细节部分,时间不是很多,所以看的进度也不会太快,写个博客监督自己每天都看下. 以前不知道的细节或者以前知道但是没注意过的地方都会记录下来,所以适合有一定基础的,不适合零基础新 ...

  9. 用SignalR 2.0开发客服系统[系列2:实现聊天室]

    前言 交流群:195866844 上周发表了 用SignalR 2.0开发客服系统[系列1:实现群发通讯] 这篇文章,得到了很多帮助和鼓励,小弟在此真心的感谢大家的支持.. 这周继续系列2,实现聊天室 ...

  10. dicom网络通讯入门(3)

    接下来可以进行消息传递了 ,也就是dimse ,再来复习下 什么是dimse .n-set  n-create c-echo 这些都是dimse  他们都是属于一种结构的pdu 那就是tf-pdu(传 ...