詳解sql*plus spool命令

pingley發表於2012-02-10
詳解sql*plus spool命令

        spool允許你把一句或者多句sql語句輸出儲存為,作業系統檔案。
SQL> spool emp_salary.lst    //指定輸出的檔名
SQL> select first_name,last_name,salary
  2  from employees;
SQL> spool off //結束輸出
SQL> !
[oracle@zeng ~]$ ll
total 360
-rw-r--r--. 1 oracle oinstall     29 Feb  6 13:12 afiedt.buf
-rw-r--r--. 1 oracle oinstall  15635 Feb  5 20:43 db.rsp
drwxr-xr-x. 3 oracle oinstall   4096 Feb  6 11:06 Desktop
drwxr-xr-x. 2 oracle oinstall   4096 Feb  5 17:12 Documents
drwxr-xr-x. 2 oracle oinstall   4096 Feb  5 20:29 Downloads
-rw-r--r--. 1 oracle oinstall   9099 Feb 10 20:24 emp_salary.lst
如果在spool後面的輸出檔名那一欄不指定路徑的話,預設在登入使用者的home目錄下,可以使用相應的命令檢視檔案中的內容。

SQL> spool /tmp/sgainfo.lst //指定路徑與檔名
SQL> select * from V$sgainfo;
SQL> spool out
lpr: Error - no default destination available.
當沒有預設印表機的時候,使用off輸出也會儲存,但是會跳出上面的提示。
[oracle@zeng tmp]$ more sgainfo.lst     //回到作業系統中檢視spool檔案的內容。
SQL> select * from V$sgainfo;
NAME                                  BYTES RES
-------------------------------- ---------- ---
Fixed SGA Size                      1336120 No
Redo Buffers                        6373376 No
Buffer Cache Size                 159383552 Yes
Shared Pool Size                   96468992 Yes
Large Pool Size                    29360128 Yes
Java Pool Size                     12582912 Yes
Streams Pool Size                         0 Yes
Shared IO Pool Size                       0 Yes
Granule Size                        4194304 No
Maximum SGA Size                  305508352 No
Startup overhead in Shared Pool    62914560 No

NAME                                  BYTES RES
-------------------------------- ---------- ---
Free SGA Memory Available                 0
12 rows selected.
SQL> spool out

spool的語法格式:
spool { file_name[.ext] [create|replace|append]| off | out }
file_name:指定輸出的檔名。預設的副檔名是.lst。
create:建立一個新的檔案。
replace:預設使用該項.覆蓋原有檔案中的內容,如果原檔案不存在則,新建一個輸出檔案。
append:把輸出內容追加到指定的檔案中。
off:停止輸出。
out:停止輸出,併傳送到預設的印表機,該命令在有些作業系統上面不可用。

使用spool輸出不困難,重要與有意思的是,輸出檔案的用途:
用作錯誤的分析。
列印輸出結果。
用於sql*load載入到其他表。
簡單用作某些資訊的存檔。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/26110315/viewspace-716047/,如需轉載,請註明出處,否則將追究法律責任。

相關文章