【PL/SQL】Goto禁止!?キャンペーン中?Ban!

2020年9月21日

霊夢
霊夢

今日は「Goto」について説明するわね。
教えるけど、基本は使用禁止ね。

うお!
今、問題になっているキャンペーンのあれか?
対象外は東〇都だけだぞ!
またころっと方向転換してキャンセル料は補償するとか言い出したけど。
そんな話題に大々的に触れて大丈夫か?霊夢!

魔理沙
魔理沙
霊夢
霊夢

えっ!?
違うわよ・・・魔理沙・・・

えっ!?
違うの?
てっきり、旅行に行くのかと・・・。

「Goto文」の事よ!いろいろな言語に実装されているわ。
PL/SQLでの使い方を説明するわね。
下にコードを載せるわ。

DECLARE
    AAA PLS_INTEGER;
BEGIN
    AAA := 1;
 
    IF AAA = 1 THEN
        GOTO SKIP_DATA;
    END IF;
 
    AAA := 2; --ここは通らない
 
    <<SKIP_DATA>>
    NULL;
END;
霊夢
霊夢

「Goto文」を使用するには、まずラベルを記述します。

ラベル~?
キャンペーンは?

魔理沙
魔理沙
霊夢
霊夢

キャンペーンは置いておいて!
<<SKIP_DATA>>がラベルになります。
「<<」と「>>」の間に任意の名前を付けます。
それでラベルとなります。

あれ~。ラベルの下に
じゃまな「NULL」があるぞー。
消しちゃえ!

魔理沙
魔理沙
霊夢
霊夢

(もう完全にやる気ないわね・・・・)
そのNULLは消しちゃだめよ。
ラベルの次の行は、実行可能なコード(命令)である必要があるの。
「END」とか「END IF」とか「END LOOP」とかは、それ単体では実行可能なコードではないのよ。
そう言う時は、「NULL;」を記述してコンパイルを通すのよ。

霊夢
霊夢

最初にも言ったけど、
「Goto文」は、なるべく使用しない方が良いわ!
私は、ルールに則って使用するなら効率よくコーディングできると思うのだけど・・・。
「Goto文」をコーディングしているのを見られたら、99.9%のプログラマーから、邪教徒あつかいされるから気を付けて。
もうここまで来ると、良いとか悪いとかじゃなく、世論よ!w

終わった?
世論なんてどうでも良いから
Gotoキャ〇ペーン使って
旅行行こうぜ!コロ助なんて
ウ〇ルスバ〇ターで除去だぜナリ。

魔理沙
魔理沙
霊夢
霊夢

それを言うなら
「Go to」です。「Go」と「to」よ。
魔理沙の発言が不適切過ぎるので、このへんで終わるわね。
またね~。

【PL/SQL】メニュー

サイトマップ

2020年9月21日Oracle,PL/SQL,データベース,プログラム

Posted by こっぷ