仕事中にSQLPLUSでよく使う設定を紹介します。
SQLPLUSの設定コマンドと意味
コマンド | 意味 |
SET TRIMOUT ON | SQL*Plus の 標準出力の表示時に行末の空白を出力しない |
SET TRIMOUT OFF | SQL*Plus の 標準出力の表示時に行末の空白を出力する |
SET TRIMSPOOL ON | SQL*Plus の SPOOL 命令によるファイル書き出し時に行末の空白を出力しない |
SET TRIMSPOOL OFF | SQL*Plus の SPOOL 命令によるファイル書き出し時に行末の空白を出力する |
SET FEEDBACK ON | 問い合わせの結果レコード件数メッセージ、DDL の実行時の応答メッセージや PL/SQL の実行時の応答メッセージを表示する |
SET FEEDBACK OFF | 問い合わせの結果レコード件数メッセージ、DDL の実行時の応答メッセージや PL/SQL の実行時の応答メッセージを表示しない |
SET FEEDBACK 行数 | 問い合わせの結果の件数が行数を超えたら、メッセージを表示する。 ※デフォルトは問い合わせの結果レコードが 6 レコード以上の場合にメッセージを表示する。(0 件の場合も表示) |
SET ECHO ON | スクリプトを実行して SELECTの結果だけを表示したり SPOOL させたい場合に使用する。 |
SET ECHO OFF | スクリプトを実行して SELECT文も表示する。 |
SET COLSEP 区切り文字 | 列と列の間の区切り文字を設定する 列と列の間の区切り文字「,」を設定する場合: set colsep ‘,’ |
SET HEADING ON | 検索結果のヘッダを表示する |
SET HEADING OFF | 検索結果のヘッダを表示しない |
SET PAGESIZE 行数 | 1ページの行数を設定する |
SET LINESIZE 文字数(実はバイト数) | 1行の長さを設定する |
set numwidth 桁数 | 数値の表示桁数を設定する |
SET TERMOUT ON | スクリプト実行によるコマンドの結果出力を表示する |
SET TERMOUT OFF | スクリプト実行によるコマンドの結果出力を表示しない |
SET SERVEROUTPUT ON | DBMS_OUTPUT による PL/SQL の標準出力を表示する |
SET SERVEROUTPUT OFF | DBMS_OUTPUT による PL/SQL の標準出力を表示しない |
SET VERIFY ON | 置換変数に設定する前後の状態を表示する |
SET VERIFY OFF | 置換変数に設定する前後の状態を表示しない |
SET NULL 代替文字列 | NULL を別の文字列に変換する |
SET MARKUP CSV ON QUOTE ON | CSVフォーマットで出力する(12c以降) |
実行計画のコマンドと意味
AUTOTRACE オプション | 内容 |
set autotrace on explain | 実行結果と実行計画を表示する。 |
set autotrace on statistics | 実行結果と実行時統計情報を表示する。 |
set autotrace on | 実行結果と実行計画、統計情報を表示する。 |
set autotrace traceonly | 実行計画と統計を表示する。実行結果は表示しない。 |
set autotrace off | autotrace をオフにする。 |
実行計画の統計名と意味
データベース統計名 | 説明 |
recursive calls | 再帰的コールの回数(ユーザーおよびシステムレベル) |
db block gets | ブロックの要求回数 |
consistent gets | ブロックレベルの一貫性読込み回数 |
physical reads | 物理読込みの合計数 |
(physical reads direct + physical reads cache) | |
redo size | 生成された REDO の合計(バイト) |
bytes sent via SQL*Net to client | Oracle Net 経由でクライアントに送信されたバイト数 |
bytes received via SQL*Net from clien | クライアントから受信したバイト数 |
SQL*Net roundtrips to/from client | Oracle Net の送受信のやり取りの合計数 |
sorts (memory) | 完全にメモリー内で実行されたソートの数 |
sorts (disk) | ディスク書込みを伴ったソートの数 |
rows processed | 処理を行なった行数 |