Oracle Spool详解

转自:http://blog.sina.com.cn/s/blog_6bccf0360101hzsh.html

1.spool的作用是什么?

spool的作用可以用一句话来描述:在sqlplus中用来保存或打印查询结果。

2.spool在oracle 9i、10g和11g下的语法及使用示例

oracle 9i spool语法
SPO[OL] [file_name[.ext]|OFF|OUT]

oracle 10g、11g spool语法
SPO[OL] [file_name[.ext] [CRE[ATE] | REP[LACE] | APP[END]] | OFF | OUT]

oracle 9i spool的主法比较简单,其实就相当于oracle 10g中spool的replace选项,因此本文主要介绍oracle 10g的选项。

file_name[.txt]
保存查询结果集的的路径和文件名,如果没有指定后缀名,默认名一般为.lst或.lis。如果指定系统文件为/dev/null and /dev/stderr,则不会添加后缀名。

off
完成spool。

out
停止spool,并将文件输出到终端设备上,如打印机(可能有些操作系统不支持)。

我们从语法上可以看到,oracle在10g、11g中对spool增加了create、replace、append选项,
create
    创建指定文件名的新文件;如指定文件存在,则报文件存在错误。
replace
    如果指定文件存在则覆盖替换;如指定文件不存在,则创建,replace为spool默认选项。
append
    向指定文件名中追加内容;如指定文件不存在,则创建。

原文地址:https://www.cnblogs.com/timlong/p/4875125.html