LEAVE ステートメント

LEAVE ステートメントは、Label によって識別された、含まれている WHILE、REPEAT、LOOP、または BEGIN ステートメントの現在の繰り返し処理を停止します。

ループ条件を含んでいるステートメントの評価は (もしあれば) バイパスされ、ループは停止します。

構文

次の例では、ループは 4 回繰り返します。
DECLARE i INTEGER;
SET i = 1;
X : REPEAT
  ...
  IF i >= 4 THEN
    LEAVE X;
  END IF;

  SET i = i + 1;
UNTIL
  FALSE
END REPEAT;
LEAVE ステートメントをラベル付きステートメントで直接囲む必要はなく、それによって LEAVE ステートメントは特に強力なものとなります。
DECLARE i INTEGER;
SET i = 0;
X : REPEAT -- Outer loop
  ...
  DECLARE j INTEGER;
  SET j = 0;
  REPEAT -- Inner loop
    ...
    IF i >= 2 AND j = 1 THEN
      LEAVE X; -- Outer loop left from within inner loop
    END IF;
    ...
    SET j = j + 1;
  UNTIL
    j >= 3
  END REPEAT;

  SET i = i + 1;
UNTIL
  i >= 3
END REPEAT X;
                             -- Execution resumes here after the leave
関連概念
ESQL の概要
関連タスク
ESQL の開発
関連資料
構文図: 使用可能なタイプ
ESQL のステートメント
特記事項 | 商標 | ダウンロード | ライブラリー | サポート | フィードバック
Copyright IBM Corporation 1999, 2006 最終更新: 08/21/2006
ak05070_