ページの先頭行へ戻る
Symfoware Server V11.0.x SQLリファレンス
Symfoware

6.6 WHENEVER文(埋込み例外宣言)

機能

埋込みSQLの実行時、例外条件が発生した場合にSQL埋込みホストプログラムがとる動作を指定します。

記述形式

構文の構成

一般規則

条件(SQLERRORおよびNOT FOUND)
  • 条件にSQLERRORが指定されると、埋込みSQL文の実行結果が正常終了、データなし、または警告のいずれでもないときに、例外動作が実行されます。

  • 条件にNOT FOUNDが指定されると、埋込みSQL文の実行結果がデータなしのときに、例外動作が実行されます。

例外動作(CONTINUEおよびGOTO)
  • 例外動作にCONTINUEが指定されると、条件に指定された事象の発生した埋込みSQL文の次の文が実行されます。

  • 例外動作にGOTOまたはGO TOが指定されると、相手先で指定された相手先へ分岐します。

ホストラベル識別子
  • ホストラベル識別子は、以下のように指定します。

    • SQL埋込みCプログラムの中に指定する場合は、分岐先の文に付けられた名札(ラベル)を指定します。

    • SQL埋込みCOBOLプログラムの中に指定する場合は、分岐先の節名(セクション名)または段落名(パラグラフ名)を指定します。なお、節名および段落名が日本語文字でない場合、先頭は英字とします。段落名には、節名による修飾を付けてはいけません。

  • ホストラベル識別子は、“SQL”以外で始まることが必要です。これらは、英大文字を等価な英小文字に置き換えた場合にも同じです。

使用例

図6.1 埋込み例外宣言の有効範囲