業務で使用しているSQL文で、以下のような設定コマンドが出ていたので、それぞれ意味をまとめておきます。

sqlplus -s XXXXXX/XXXXXX > /dev/null
set echo      off
set termout   off
set heading   off
set feedback  off
set trimspool on
set pagesize  0
set linesize  200
spool test.txt
・・・
spool off

 

■SQL*Plusのサイレントモード起動
初期メッセージなどの出力を抑えて接続する。バッチ処理などで有用。

sqlplus -S ~

★参考ページ

https://www.shift-the-oracle.com/sqlplus/tutorial/sqlplus-option.html

 

■システム変数について
いわゆる「SET システム変数 値」の形式で表される設定。()内は「値」に入る種類。
設定されている値を確認するには、「SHOW システム変数」

コマンド 概要
SET ECHO スクリプトのコマンドの表示有無(on/off)
SET TERMOUT スクリプトのアウトプットの表示有無(on/off)
SET HEADING 列のヘッダの表示有無(on/off)
SET FEEDBACK 問合せ結果の件数の表示有無(on/off)
SET TRIMSPOOL 行末まで空白を表示するかどうか(on/off)
SET PAGESIZE 1ページの行数 ※0の場合は、ヘッダ等をすべて非表示
SET LINESIZE 1行の表示文字数(数字)

★参考ページ

https://www.shift-the-oracle.com/sqlplus/system-variable/

■SPOOLについて
クエリの結果やターミナルへの出力結果をファイルに出力するコマンド

①出力開始時
SPOOL [ファイル名] [CREATE | REPLACE | APPEND] or
SPO [ファイル名] [CRE | REP | APP]

②出力終了時
SPOOL OFF
or
SPO OFF

★参考ページ

https://www.shift-the-oracle.com/sqlplus/command/spool.html

Follow me!