SQL*Plus で SQL を実行するとクエリ結果が流れてしまい、
いちいち画面をスクロールで戻って確認するのがめんどーなことがある。
そんな時 SQL*Plus のシステム変数 pause を使えば、クエリの結果出力を
一画面に収まる範囲で一時停止させることが可能。
構文
SET PAU[SE] { ON | OFF | text }
※ [] 内は、省略可能。
デフォルトの状態
SQL> show pause PAUSE は OFF です。
→ デフォルトは OFF のため、クエリ結果は1度に全て出力される。
有効にする
SQL> set pause on
変更を確認
SQL> show pause PAUSE は ONで、設定値は "" です。
(設定値については後述)
変更後
例) 任意のクエリを実行(一画面に収まらない件数で確認)
SQL> select * from dba_tables;
実行するとウィンドウサイズに合わせて出力が一時停止。
Enter キーを押下すると、次の結果が表示される。
途中でキャンセルしたい場合は、Ctrl+C で戻れる。
(※) 任意のメッセージを表示させたい場合は、引用符で囲って指定する。
SQL> set pause "ポーズ中" SQL> show pause PAUSE は ONで、設定値は "ポーズ中" です。
メッセージはウィンドウの最下部に表示される。
実行するクエリによっては見づらくなるので、
システム変数 linesize や pagesize などと一緒に使用するとよい。