ALTER ステートメントは、GO TO ステートメントの中で指定されている制御の転送先を変更します。
ALTER ステートメント - 形式 >>-ALTER--------------------------------------------------------> .-------------------------------------------------------------. V | >----プロシージャー名-1--TO--+------------+--プロシージャー名 -2-+->< '-PROCEED TO-'
ALTER ステートメントの実行によって、プロシージャー名-1 で名前を指定された段落中の GO TO ステートメントが修正されます。 続いてこの修正された GO TO ステートメントが実行されると、プロシージャー名-2 へ制御が移ります。
プロシージャー名-1 およびプロシージャー名-2 が宣言プロシージャー内にある場合、そのどちらも、どの非宣言プロシージャーも参照できません。 プログラムの非宣言の中では、EXCEPTION/ERROR 宣言プロシージャーの中に現れるプロシージャー名に対する参照があってはなりません。
ALTER ステートメントの実行前に、プロシージャー名-1 に指定されている段階に制御が移った場合には、GO TO ステートメントは GO TO ステートメントで指定された段落に制御を移します。 しかし、ALTER ステートメントの実行後に、制御が再度プロシージャー名-1 によって指定された段落へ渡ると、GO TO ステートメントは制御をプロシージャー名-2 によって指定されている段落へ渡します。
関連情報