Oracle 預設環境(如 80 字元行寬、空格分隔、無自動 Commit)往往不符合 DBA 習慣,導致閱讀疲勞、誤操作風險。自訂並持久化環境變數可顯著提升效率與舒適度。
| 變數 | 指令 | 效果 | 建議值 |
|---|---|---|---|
| 欄位分隔符 | SET COLSEP '|' | 欄位間顯示明顯分隔線,避免看錯行 | | 或 ; |
| 自動 Commit | SET AUTOCOMMIT ON | DML 執行即提交,免輸入 COMMIT(開發測試階段適用) | 開發 ON / 正式 OFF |
| 行寬度 | SET LINESIZE 200 | 避免長行自動換行導致欄位錯位 | 200-300(視螢幕) |
| 標題分隔線 | SET UNDERLINE '*' | 欄位名與資料間以 * 分隔,區隔度高 | *、=、- |
STORE SET my_env.sql REPLACE(預設存至 $ORACLE_HOME/sqlplus/admin/)。$ORACLE_HOME/sqlplus/admin/glogin.sql(全域)或 login.sql(使用者目錄),在檔案末尾加入:@my_env.sql。SET PAGESIZE 50 -- 每頁顯示行數(0 為不分頁)
SET FEEDBACK ON -- 顯示「n rows selected」
SET TIMING ON -- 顯示指令執行時間
SET TRIMSPOOL ON -- Spool 輸出去除尾部空白
SET LONG 100000 -- 長欄位顯示長度
SET NUMFORMAT 999,999,999.99 -- 數字顯示格式
glogin.sql 納入版控(Git/SVN),新同事 Clone 即得標準環境。login.sql,SQL*Plus 啟動時會依序讀取 glogin.sql → login.sql(當前目錄)。