天天看點

PL/SQL的流程控制語句(選擇語句/循環語句)

隻貼上了關鍵代碼,變量聲明的簡單代碼沒有放上來

選擇語句

-----------------------------流程控制語句(選擇)
  --if...then...end if
  IF a < b
    THEN dbms_output.put_line('a<b');
    END IF;
  --if...then...else...end if
  IF a>b
    THEN dbms_output.put_line('a>b');
    ELSE dbms_output.put_line('a<=b');
    END IF;
  --if...then..elsif...else...end if
  IF a>b THEN dbms_output.put_line('a>b');
    ELSIF a<b THEN dbms_output.put_line('a<b');
    ELSE dbms_output.put_line('a=b');
    END IF;
  --case...when...end case[注意與java等switch語句的差別:這裡不需要break語句來打斷執行]
  CASE SUPER_USER_NAME
    WHEN '何青' THEN dbms_output.put_line(SUPER_USER_NAME);
    WHEN '嘿咻' THEN dbms_output.put_line(SUPER_USER_NAME);
    END CASE;
           

循環語句

--loop..exit when..end loop
  LOOP 
    dbms_output.put_line(a);
    a := a + 1;
    EXIT WHEN a>200;
    END LOOP;
  --while...loop...end loop
  WHILE a>100 LOOP
    dbms_output.put_line(a);
    a := a-1;
    END LOOP;
  --for...in [reverse] ... .. ...loop ...end loop
  FOR a IN 1..100 LOOP
    dbms_output.put_line(a);
    END LOOP;
  --goto【goto語句臭名昭著,使用時一定要慎重慎重再慎重】
  <<gotoMark>>
    dbms_output.put_line('hhhjhhh');
  IF a<200 THEN a:= a+1;
     GOTO gotoMark;
     END IF;