例外条件が発生したときに実行されるアクションを指定します。
ANSI準拠
WHENEVERは、ANSI/ISO SQL:2011準拠であり、拡張機能が追加されています。
必要な権限
なし。
呼び出し
実行可能形式。
埋め込みSQLのみ。
構文
WHENEVER condition action
構文要素
- condition
- 指定されたアクションが実行される条件のタイプを示すステータス キーワード。
- action
- 条件が発生した場合に実行されるアクション。
使用上の注意
- プリコンパイラSQLFLAGGERオプションをENTRYに設定すると、WHENEVER SQLWARNINGによってプリコンパイラ警告が発生します。
- GO TOのオブジェクトのルールは、言語によって異なります。
- 初期の暗黙的例外宣言として、常にCONTINUEが宣言されます。
- プログラム テキストの例外宣言の後にSQL文が続き、しかも同じ例外条件に対して他の例外宣言が介入しない場合に限って、例外宣言はその特定のSQL文に適用されます。
例外条件が当てはまる場合のアクション アプリケーション プログラムの実行が続行される場所 CONTINUE 次の命令。 例外条件は無視されます。
GOTO 指定されたターゲットの場所。 host_labelを指定する際、ターゲットを示すクライアント言語のGO TO文が、例外宣言の適用される全てのSQL文において有効になるようにする必要があります。
CALL 指定されたサブプログラムが実行され(呼び出され)、呼び出し側プログラムに制御が戻された後、次の命令が実行されます。 対応するクライアント文(COBOLおよびPL/I の場合はCALL関数、Cの場合は関数呼び出し)は、例外宣言が適用される全てのSQL文において有効でなければなりません。
PERFORM 指定された1つまたは複数のCOBOLパラグラフまたはセクションが実行された後の次の命令。 対応するCOBOL文(PERFORMコード)は、例外宣言が適用される全てのSQL文において有効でなければなりません。
- 次のSQLCODE定義が適用されます。
SQL文の実行後のSQLCODEの値 当てはまる例外条件 任意の負の数 SQLERROR +100以外の正の値 SQLWARNING +100 NOT FOUND
関連情報
- SQLSTATEについては、SQLSTATEを参照してください。
- GO TOのオブジェクトのルールについては、<Teradata® Preprocessor2 for Embedded SQLプログラマ ガイド、B035-2446>を参照してください。