13.35 GOTO文

GOTO文は、ラベルの付いたブロックまたは文に制御を移します。

GOTO文によってカーソルFOR LOOP文が途中で終了されると、カーソルはクローズされます。

GOTO文の制限

  • GOTO文は、IF文、CASE文、LOOP文またはサブブロックには制御を移せません。

  • GOTO文では、あるIF文の句から別の句へ制御を移したり、あるCASE文のWHEN句から別の句へ制御を移すことはできません。

  • GOTO文では、サブプログラムの外に制御を移せません。

  • GOTO文では、例外ハンドラに制御を移せません。

  • GOTO文は、例外ハンドラからカレント・ブロックに制御を戻すことはできません(ただし、例外ハンドラから外側のブロックに制御を移すことはできます)。

ここでのトピック

構文

goto_statement ::=

セマンティクス

goto_statement

label

ブロックまたは文を識別します(「plsql_block ::=」「statement ::=」、および「label」を参照)。

labelがカレント・ブロックにない場合、GOTO文は外側のブロックのうちlabelが存在する最初のものに制御を移します。

  • 例4-29GOTO文

  • 例4-32GOTO文による外側のブロックへの制御の移動

  • 例4-33GOTO文によるIF文内への無効な制御の移動

関連トピック

この章:

他の章: