SQL*Plus プロファイル(設定ファイル)
SQL*Plusを定義した所定の状態で起動する
SQL*Plus を毎回、特定の状態にするにはサイトプロファイル (glogin.sql) またはユーザープロファイル (login.sql) を定義することで実現できる。
プロファイルは CONNECT 操作の度にも実行される。
glogin.sql / サイトプロファイル
サイトプロファイルは、同一マシン毎のプロファイル ( glogin.sql )
{ORACLE_HOME}/sqlplus/admin/glogin.sql に設置されている。(マシン単位)
login.sql / ユーザープロファイル
ユーザープロファイルは、OS ユーザーのプロファイル ( login.sql )
ユーザープロファイルは任意指定であり、ユーザーの作業ディレクトリ(カレントディレクトリ)と SQLPATH 環境変数 の順で探索される。最初に見つかった1つのユーザープロファイルしか読み込まれない。
(注意) SQL*Plus が 起動オプション の -R で実行された場合にはユーザープロファイルは読み込まない。
Windows 系の環境変数に該当するものはレジストリの
HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\KEY_OraClient10g_home1
あたりを探してください。(斜体部は環境依存)
プロファイルに良く使う設定
プロファイルに以下のコマンドを設定しておくと便利
set serveroutput on size 1000000
set time on
set trimspool on
define _editor="C:\Program Files\Hidemaru\hidemaru.exe"
補足
- set serveroutput on size 1000000
- dbms_output の出力バッファを約 1MB にする。
Oracle 10g R2 であれば set serveroutput on とすることでサイズを制限なしにもできる。
- set time on
- プロンプトに時刻を表示する。
常に詳細時間(ms)を知りたいなら set timing on
- set trimspool off
- スプール出力時に行末に連続するスペースを削除する。
その他にも 60個程の設定項目がある ⇒ SQL*Plus システム変数一覧
- define _editor="C:\Program Files\Hidemaru\hidemaru.exe"
- edit コマンド で使用するエディタを設定する。
UNIX 系の環境では EDITOR 環境変数(未設定時 /usr/bin/ed など)を設定すると継承される。
_editor はシステム変数ではなく SQL*Plus 事前定義変数 に該当するので define コマンド を使用する。
(通常、設定を変更するのは _editor のみで他の事前定義変数は変更しない)
SQL*Plus 環境設定関連
環境変数によってメッセージの言語や表示する書式を設定することができる。
⇒ 環境変数 (NLS_LANG、ORACLE_HOME、etc)