CLP コマンド・オプションは、 コマンド行プロセッサー DB2OPTIONS 環境変数 (大文字) を設定するか、 またはコマンド行フラグを使用することにより指定できます。
ユーザーは、DB2OPTIONS を使用して、 セッション全体に適用されるオプションを設定することができます。
オプション・フラグの現在の設定および DB2OPTIONS の値を表示するには、 LIST COMMAND OPTIONS を使用します。 オプションの設定を対話式入力モードまたはコマンド・ファイルから変更するには、 UPDATE COMMAND OPTIONS を使用します。
表 1 に CLP オプション・フラグを要約してあります。 これらのオプションは、どのような順序や組み合わせでも指定することができます。 オプションをオンにするには、対応するオプション文字の前に負符号 (-) を付けます。 オプションをオフにする場合、 オプション文字の接頭部に負符号を付けオプション文字の後にも別の負符号を付けるか、 またはオプション文字の接頭部に正符号 (+) を付けてください。 例えば、-c で auto-commit オプションはオンになり、 -c- または +c でオフになります。 これらのオプション文字では大文字と小文字は区別されず、 -a と -A は同じものと見なされます。
オプション・フラグ | 説明 | デフォルト設定 |
---|---|---|
-a | コマンド行プロセッサーは SQLCA データを表示します。 | オフ |
-c | コマンド行プロセッサーは SQL ステートメントを自動的にコミットします。 | ON |
-d | このオプションは、コマンド行プロセッサーが XML データの XML 宣言を検索して表示するよう指示します。 | オフ |
-e{c|s} | コマンド行プロセッサーは SQLCODE または SQLSTATE を表示します。 この 2 つのオプションは相互に排他的です。 | オフ |
-f filename | コマンド行プロセッサーは、 コマンド入力を標準入力ではなくファイルから読み取ります。 | オフ |
-i | このオプションは、コマンド行プロセッサーが、適切な字下げを使って XML データを「整形印刷」するよう指示します。このオプションは、XQuery ステートメントの結果セットにのみ影響を与えます。 | オフ |
-l filename | コマンド行プロセッサーはコマンドを履歴ファイルに記録します。 | オフ |
-m | このオプションは、コマンド行プロセッサーが、INSERT/DELETE/UPDATE/MERGE で影響を受ける行の数を印刷するよう指示します。 | オフ |
-n | 単一の区切りトークン内の改行文字を除去します。 このオプションを指定しない場合、改行文字はスペースで置換されます。 このオプションは、-t オプションと共に使用する必要があります。 | オフ |
-o | コマンド行プロセッサーは、出力データおよびメッセージを標準出力に表示します。 | ON |
-p | コマンド行プロセッサーは、対話型入力モードのときにコマンド行プロセッサー・プロンプトを表示します。 | ON |
-q | このオプションは、コマンド行プロセッサーが、単一または二重引用符で区切られているストリング内の空白文字および改行文字を保持するよう指示します。オプション q が ON のとき、オプション n は無視されます。 | オフ |
-r filename | コマンド行プロセッサーは、コマンドが生成したレポートをファイルに書き込みます。 | オフ |
-s | コマンド行プロセッサーは、バッチ・ファイルまたは対話式モードでコマンドを実行中にエラーが発生した場合、 実行を停止します。 | オフ |
-t | コマンド行プロセッサーはセミコロン (;) をステートメント終了文字として使用します。 | オフ |
-tdx または -tdxx | このオプションは、コマンド行プロセッサーが x または xx をステートメント終了文字 (長さは 1 文字または 2 文字) として定義し、使用するよう指示します。 | オフ |
-v | コマンド行プロセッサーはコマンド・テキストを標準出力にエコーさせます。 | オフ |
-w | このオプションは、コマンド行プロセッサーが FETCH/SELECT 警告メッセージを表示するよう指示します。 | ON |
-x | コマンド行プロセッサーは列名などのヘッダーなしでデータを戻します。 このフラグは、すべてのコマンドには影響を与えません。 これは、SQL ステートメント、および SQL ステートメントに基づくいくつかのコマンド (LIST TABLES など) に適用されます。 | オフ |
-z filename | コマンド行プロセッサーはすべての出力をファイルにリダイレクトします。 これは -r オプションと似ていますが、 出力の他にメッセージやエラー・コードも含まれます。 | オフ |
例
export DB2OPTIONS='+a -c +ec -o -p'
を実行すると、このセッションのデフォルト設定は以下のようになります。 Display SQLCA - off
Auto Commit - on
Display SQLCODE - off
Display Output - on
Display Prompt - on
このコマンド・オプションのデフォルト設定は OFF です (+a または -a-)。
-o および -r オプションは -a オプションに影響します。 詳細については、オプションの説明を参照してください。
このコマンド・オプションのデフォルト設定は ON です。
自動コミット・オプションは、他のコマンド行プロセッサー・オプションに影響することはありません。
db2 list tables
を実行しても、空のリストが戻されます。-d オプションにより、コマンド行プロセッサーが、XML データの XML 宣言を検索して表示するかどうかが決まります。
ON (-d) に設定した場合、XML 宣言は検索されて表示されます。 OFF (+d または -d-) に設定した場合、XML 宣言は検索および表示されません。 このコマンド・オプションのデフォルト設定は OFF です。
XML 宣言オプションは、他のコマンド行プロセッサー・オプションには影響しません。
このコマンド・オプションのデフォルト設定は OFF です (+e または -e-)。
-o および -r オプションは、-e オプションに影響します。 詳細については、オプションの説明を参照してください。
SQLCODE/SQLSTATE 表示オプションは他のコマンド行プロセッサー・オプションには影響しません。
sqlcode=`db2 -ec +o db2-command`
ファイル入力オプションを指定して CLP を呼び出すと、自動的に CLIENT APPLNAME 特殊レジスターが CLP filename に設定されます。
db2 -tvf filename
db2 -tvf filename コマンドを使用して CLP スクリプト・ファイルを実行すると、CLIENT APPLNAME 特殊レジスターが CLP filename に設定されます。 次に実行するコマンドによって、特殊レジスター CLIENT APPLNAME および CLIENT ACCTNG は、db2 -tvf filename コマンドが発行される前の古い値にリセットされます。 次に実行するコマンドが db2 terminate の場合、または filename 内の最後のステートメントが terminate の場合には、これらの特殊レジスターはリセットされません。 これは、どのバッチ・ジョブが現在実行中であるかをモニターし、CLP ワークロードを区別するのに有用です。
このオプションは、対話式モード内では変更できません。このコマンド・オプションのデフォルト設定は OFF です (+f または -f-)。
コマンド処理は QUIT または TERMINATE が出されるまで、またはファイルの終わりまで続行されます。
このオプションとデータベース・コマンドの両方を指定すると、 コマンド行プロセッサーはコマンドをまったく処理せずにエラー・メッセージを戻します。
コメント文字 -- で始まる入力ファイル行は、 コマンド行プロセッサーによりコメントとして処理されます。 行の最初の非ブランク文字はコメント文字でなければなりません。
(= で開始する入力ファイル行は、コメント・ブロックの開始として処理されます。 =) で終了する行は、コメント・ブロックの終了を知らせます。 (= で開始して =) で終了する入力行のブロックは、 連続したコメントとしてコマンド行プロセッサーによって処理されます。 (= の前および =) の後には、スペースを置くことが許可されています。 コメントをネストさせることも可能で、ステートメント内にネストさせて使用することもできます。 コマンド終了文字 (;) は、=) の後では使用できません。
-f filename オプションを指定すると、 -p オプションは無視されます。
入力ファイルからの読み取りオプションは、他のコマンド行プロセッサー・オプションには影響しません。
-t オプションまたは EOF で指定されていない限り、デフォルトの終了文字は、改行文字の 1 つです。
-i オプションは、適切な字下げを使って XML データを「整形印刷」するようにコマンド行プロセッサーに指示します。このオプションは、XQuery ステートメントの結果セットにのみ影響を与えます。
このコマンド・オプションのデフォルト設定は OFF です (+i または -i-)。
整形印刷オプションは、他のコマンド行プロセッサー・オプションには影響しません。
db2 -tvl filename
このコマンド・オプションのデフォルト設定は OFF です (+l または -l-)。
履歴ファイルへのコマンドのログ・オプションは、他のコマンド行プロセッサー・オプションには影響しません。
-m オプションにより、コマンド行プロセッサーは、 INSERT、DELETE、UPDATE、 または MERGE で影響を受ける行の数を印刷するかどうかを決定します。
ON (-m) に設定した場合、INSERT/DELETE/UPDATE/MERGE のステートメントで 影響を受ける行数が表示されます。 OFF (+m または -m-) に設定した場合、影響を受ける行数は表示されません。 その他のステートメントでは、このオプションは無視されます。 このコマンド・オプションのデフォルト設定は OFF です。
-o および -r オプションは -m オプションに影響します。 詳細については、オプションの説明を参照してください。
このコマンド・オプションのデフォルト設定は OFF です (+n または -n-)。
このオプションは、-t オプションと共に使用する必要があります。 詳細については、オプションの説明を参照してください。
このコマンド・オプションのデフォルト設定は ON です。
対話式モード開始情報は、このオプションによって影響を受けることはありません。 出力データは、ユーザー指定コマンドからの実行結果のレポート出力、 および SQLCA データ (要求した場合) で構成されます。
-o と -e オプションの両方を指定すると、 データおよび SQLCODE または SQLSTATE のどちらかが画面に表示されます。
-o と -v オプションの両方を指定すると、 データが表示され、発行した各コマンドのテキストが画面にエコーされます。
出力表示オプションは、他のコマンド行プロセッサー・オプションには影響しません。
このコマンド・オプションのデフォルト設定は ON です。
db2 +p < myfile.clp
-p オプションは、 -f filename オプションを指定すると無視されます。
DB2 対話式プロンプト表示オプションは、他のコマンド行プロセッサー・オプションには影響しません。
-q オプションにより、コマンド行プロセッサーは、単一または二重引用符で区切られているストリング内の空白文字および改行文字を保持します。
このコマンド・オプションのデフォルト設定は OFF です (+q または -q-)。
オプション -q が ON の場合、オプション -n は無視されます。
このコマンド・オプションのデフォルト設定は OFF です (+r または -r-)。
-a オプションを指定すると、SQLCA データがファイルに書き込まれます。
-r オプションは -e オプションには影響しません。 -e オプションを指定すると、 SQLCODE または SQLSTATE がファイルではなく標準出力に書き込まれます。
-r filename を DB2OPTIONS に設定すると、 ユーザーはコマンド行から +r (または -r-) オプションを設定して、 特定のコマンド呼び出しの出力データがファイルに書き込まれないようにすることができます。
報告ファイルへの保存オプションは、他のコマンド行プロセッサー・オプションには影響しません。
このコマンド・オプションのデフォルト設定は OFF です (+s または -s-)。 この設定により、コマンド行プロセッサーはエラー・メッセージを表示し、残りのコマンドの実行を続け、 システム・エラーが発生したとき (戻りコード 8) に限って実行を停止します。
戻りコード | -s オプション設定 | +s オプション設定 |
---|---|---|
0 (成功) | 実行の継続 | 実行の継続 |
1 (0 行が選択された) | 実行の継続 | 実行の継続 |
2 (警告) | 実行の継続 | 実行の継続 |
4 (DB2 または SQL エラー) | 実行の停止 | 実行の継続 |
8 (システム・エラー) | 実行の停止 | 実行の停止 |
このコマンド・オプションのデフォルト設定は OFF です (+t または -t-)。
db2 -td%% -f file1.txt
または
db2 -f file2.txt
file2.txt には、以下のステートメントがファイル中の最初のステートメントとして含まれます。
--#SET TERMINATOR %%
このコマンド・オプションのデフォルト設定は OFF です。
終了文字かどうかを調べられるのが各入力行の最後の 1 つまたは 2 つの非ブランク文字だけであるため、 コマンド行の複数のステートメントを連結するために終了文字を使用することはできません。
ステートメント終了文字オプションは、他のコマンド行プロセッサー・オプションには影響しません。
このコマンド・オプションのデフォルト設定は OFF です (+v または -v-)。
+o (または -o-) が指定された場合、 -v オプションは無効になります。
冗長出力オプションは、他のコマンド行プロセッサー・オプションには影響しません。
このコマンド・オプションのデフォルト設定は ON です。
このコマンド・オプションのデフォルト設定は OFF です。
このコマンド・オプションのデフォルト設定は OFF です (+z または -z-)。
-a オプションを指定すると、SQLCA データがファイルに書き込まれます。
-z オプションは -e オプションには影響しません。 -e オプションを指定すると、 SQLCODE または SQLSTATE がファイルではなく標準出力に書き込まれます。
-z filename を DB2OPTIONS に設定すると、 ユーザーはコマンド行から +z (または -z-) オプションを設定して、 特定のコマンド呼び出しの出力データがファイルに書き込まれないようにすることができます。
すべての出力のファイルへの保存オプションは、他のコマンド行プロセッサー・オプションには影響しません。