【SQL*Plus】使用SQL*Plus的-S選項精簡輸出資訊

secooler發表於2010-12-04
最常用的SQL*Plus命令列工具本身具有很多選項可供我們使用。建議對每一個選項進行一番嘗試,這裡以-S選項為例闡述一下。

1.SQL*Plus幫助資訊中關於-S選項的描述
ora10g@secdb /home/oracle$ sqlplus -H

SQL*Plus: Release 10.2.0.3.0 - Production

Copyright (c) 1982, 2006, Oracle.  All Rights Reserved.

……省略……
    -S             Sets silent mode which suppresses the display of
                   the SQL*Plus banner, prompts, and echoing of
                   commands.
……省略……

-S選項是一種靜默模式,是Silent的縮寫。在這種模式下將會以最精簡的形式完成SQL*Plus的互動過程。

2.在10g中的互動式使用演示
ora10g@secdb /home/oracle$ sqlplus -S
sec                        註釋:這裡輸入待連線的使用者名稱
                           註釋:這裡輸入密碼,注意這裡是沒有任何提示的
select * from dual;        註釋:以下便可以輸入待執行的SQL*Plus命令

D
-
X

select * from v$version;

BANNER
----------------------------------------------------------------
Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - 64bi
PL/SQL Release 10.2.0.3.0 - Production
CORE    10.2.0.3.0      Production
TNS for Linux: Version 10.2.0.3.0 - Production
NLSRTL Version 10.2.0.3.0 - Production

exit                        註釋:使用exit命令推出SQL*Plus環境
ora10g@secdb /home/oracle$

以上是在10g中正確的使用效果。

3.應用場景
-S選項多用於指令碼編寫中。
1)使用了-S選項的指令碼及其執行結果
ora10g@secdb /home/oracle$ cat query_oracle_version.sh
sqlplus -S sec/sec <
select * from v\$version;
exit;
EOF

ora10g@secdb /home/oracle$ sh query_oracle_version.sh

BANNER
----------------------------------------------------------------
Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - 64bi
PL/SQL Release 10.2.0.3.0 - Production
CORE    10.2.0.3.0      Production
TNS for Linux: Version 10.2.0.3.0 - Production
NLSRTL Version 10.2.0.3.0 - Production

可見,返回結果簡單明瞭,有一種清爽的感覺。

2)未使用-S選項的指令碼及其執行結果
ora10g@secdb /home/oracle$ cat query_oracle_version.sh
sqlplus sec/sec <
select * from v\$version;
exit;
EOF

ora10g@secdb /home/oracle$ sh query_oracle_version.sh

SQL*Plus: Release 10.2.0.3.0 - Production on Sat Dec 4 19:10:11 2010

Copyright (c) 1982, 2006, Oracle.  All Rights Reserved.


Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - 64bit Production
With the Partitioning, Oracle Label Security, OLAP and Data Mining Scoring Engine options

sec@ora10g>
BANNER
----------------------------------------------------------------
Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - 64bi
PL/SQL Release 10.2.0.3.0 - Production
CORE    10.2.0.3.0      Production
TNS for Linux: Version 10.2.0.3.0 - Production
NLSRTL Version 10.2.0.3.0 - Production

sec@ora10g> Disconnected from Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - 64bit Production
With the Partitioning, Oracle Label Security, OLAP and Data Mining Scoring Engine options

在未使用-S選項時,返回結果包含了很多我們不關心的資訊!

4.小結
不要放過任何一個選項帶給我們的功能特效,因為這些高階的小技巧很有可能在某一天會給你帶去極大的便利。

Good luck.

secooler
10.12.04

-- The End --

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

相關文章