用途
埋込みSQLプログラムの実行時にエラーまたは警告が発生した場合の処置を指定します。
前提条件
なし。
構文
キーワードおよびパラメータ
使用上の注意
WHENEVERディレクティブを使用すると、プログラムからエラー処理のルーチンに制御を移すことができます。これは埋込みSQ
L文でエラーまたは警告が発生したときに可能です。
WHENEVERディレクティブのスコープは論理的にではなく、位置的に適用されます。WHENEVER文は、プログラム論理の流れではなく、ソース・ファイル内で物理的に後続するすべての埋込みSQL文に適用されます。WHENEVERディレクティブは、同じ条件をチェックする別のWHENEVERディレクティブに置換されるまで有効です。
このディレクティブの詳細は、WHENEVERディレクティブの使用についてを参照してください。
埋込みSQLのWHENEVERディレクティブとSQL*PlusコマンドのWHENEVERディレクティブを混同しないでください。
例
次の2つの例では、埋込みSQLプログラムにおけるWHENEVERディレクティブの使用方法を示しています。
例1:
EXEC SQL WHENEVER NOT FOUND CONTINUE; ... EXEC SQL WHENEVER SQLERROR GOTO sql_error; ... sql_error: EXEC SQL WHENEVER SQLERROR CONTINUE; EXEC SQL ROLLBACK RELEASE; ...
例2:
EXEC SQL WHENEVER SQLERROR GOTO connect_error; ... connect_error: EXEC SQL WHENEVER SQLERROR CONTINUE; EXEC SQL ROLLBACK RELEASE; printf("\nInvalid username/password\n"); exit(1);
関連項目
なし。