ヘッダーをスキップ
Oracle Database PL/SQL言語リファレンス
11g リリース1(11.1)
E05670-03
  目次
目次
索引
索引

戻る
戻る
 
次へ
次へ
 

GOTO文

GOTO文は、文ラベルまたはブロック・ラベルに無条件に分岐します。 ラベルは有効範囲の中で他と重複しないもので、実行可能文かPL/SQLブロックの前に置かれている必要があります。 GOTO文によって、制御はラベルの付いた文またはブロックに移ります。

構文

label_declaration ::=

label_declaration
label_declaration.gifの説明

goto_statement ::=

goto_statement
goto_statement.gifの説明

キーワードとパラメータの説明

label_name

実行可能文またはPL/SQLブロックに付けるラベル名です。 GOTO文を使用すると、<<label_name>>の後に指定した文またはブロックに制御を移すことができます。

使用上の注意

GOTO文のラベルは、実行可能文かPL/SQLブロックの前に付けてください。 GOTO文はIF文、LOOP文またはサブブロックには分岐できません。 実行可能文のない場所へ分岐するには、NULL文を追加します。

GOTO文では、カレント・ブロックから同じブロックの別の場所、または囲みブロックには分岐できますが、例外ハンドラには分岐できません。 例外ハンドラのGOTO文は、囲みブロックには分岐できますが、カレント・ブロックには分岐できません。

GOTO文を使用してカーソルFORループを途中で終了させると、カーソルは自動的にクローズされます。 ループの内側で例外が呼び出された場合も、カーソルは自動的にクローズされます。

ある1つのブロックの中では、1つのラベルは一度のみ使用できます。 ただし、囲みブロックやサブブロックなどの他のブロックでそのラベルを使用できます。 ターゲット・ラベルがカレント・ブロックにない場合、GOTO文は囲みブロックのうちそのラベルが存在する最初のものに分岐します。