WHENEVER OSERROR CLPPlus コマンド

WHENEVER OSERROR CLPPlus コマンドでは、オペレーティング・システム・エラーが発生した場合に CLPPlus インターフェースが実行するアクションを指定します。 このコマンドを使用すると、エラーをトラップし、EXITCONTINUE などの指定のアクションを実行して CLPPlus インターフェースの動作を制御できます。

呼び出し

WHENEVER OSERROR コマンドは CLPPlus インターフェースから発行する必要があります。

許可

なし

必要な接続

なし

コマンド構文

構文図を読む構文図をスキップするWHENEVER OSERROR CONTINUENONECOMMITROLLBACKEXITSUCCESSFAILUREvaluevariable:bindvariableCOMMITROLLBACK

コマンド・パラメーター

CONTINUE
SQL または PL/SQL エラーが発生した場合に、CLPPlus インターフェースが指定のアクションを実行して続行するように指示します。
NONE
WHENEVER OSERROR CONTINUE コマンドで使用されるデフォルト値です。エラーが発生した SQL ブロックで何もアクションを実行しません。
COMMIT
WHENEVER OSERROR CONTINUE コマンドで COMMIT を指定すると、現在の SQL ブロックで実行された、可能なすべての作業がコミットされます。
ROLLBACK
WHENEVER OSERROR CONTINUE コマンドで ROLLBACK を指定すると、現在の SQL ブロック内のすべての作業がロールバックされます。
EXIT
オペレーティング・システムでエラーが発生した場合に、CLPPlus インターフェースが終了するように指定します。 このオプションの機能は、単体の EXIT コマンドと同じです。
SUCCESS
成功を示すオペレーティング・システム依存の戻りコードを戻します。これは、1 番目のデフォルトの EXIT パラメーターです。
FAILURE
失敗を示すオペレーティング・システム依存の戻りコードを戻します。
value
値が戻りコードとして戻される、DEFINE コマンドで作成される変数を指定します。
variable
値が戻りコードとして戻される、DEFINE コマンドで作成される置換変数値を指定します。
:bindvariable
値が戻りコードとして戻される、DEFINE コマンドで作成されるバインド変数値を指定します。
COMMIT
コミットされていない更新が CLPPlus セッションの終了時にコミットされます。 これは、2 番目のデフォルトの EXIT パラメーターです。
ROLLBACK
コミットされていない更新が CLPPlus セッションの終了時にロールバックされます。

以下の例は、EXIT と終了エラー値が指定された場合のこのコマンドの動作を示しています。
SQL> whenever oserror exit -1
SQL> get c:\nonexistingfile.sql
Db250204E: An attempt to locate a file 'c:¥¥nonexistingfile.sql' failed. The co
mmand cannot be processed.
echo %errorlevel% コマンドを実行して、戻りコードを確認できます。
echo %errorlevel%
-1
以下の例は、CONTINUE が指定された場合のこのコマンドの動作を示しています。
SQL> whenever oserror continue
SQL> get c:\nonexistingfile.sql
Db250204E: An attempt to locate a file 'c:¥¥nonexistingfile.sql' failed. The co
mmand cannot be processed.
SQL>