WHENEVER OSERROR CLPPlus コマンド
WHENEVER OSERROR CLPPlus コマンドでは、オペレーティング・システム・エラーが発生した場合に CLPPlus インターフェースが実行するアクションを指定します。 このコマンドを使用すると、エラーをトラップし、EXIT や CONTINUE などの指定のアクションを実行して CLPPlus インターフェースの動作を制御できます。
呼び出し
WHENEVER OSERROR コマンドは CLPPlus インターフェースから発行する必要があります。
許可
なし
必要な接続
なし
コマンド構文
コマンド・パラメーター
- 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>