现在的位置: 首页 > 综合 > 正文

PL/SQL程序设计_流程控制

2017年04月15日 ⁄ 综合 ⁄ 共 1152字 ⁄ 字号 评论关闭
--PL/SQL控制流程
--条件控制语句
DECLARE
V_VAR NUMBER(4) := 3;
BEGIN
  IF V_VAR = 1 
    THEN
   DBMS_OUTPUT.PUT_LINE('V_VAR=' || V_VAR);   
  ELSIF V_VAR = 2
   THEN
   DBMS_OUTPUT.PUT_LINE('V_VAR=' || V_VAR);     
  ELSE
   DBMS_OUTPUT.PUT_LINE('V_VAR=' || V_VAR);
  END IF;
  END;
/

--循环语句
--1.LOOP......END LOOP
DECLARE
V_COUNT BINARY_INTEGER := 1;
BEGIN
  LOOP    
    DBMS_OUTPUT.PUT_LINE('V_COUNT=' || V_COUNT);
    V_COUNT := V_COUNT + 1;
    IF V_COUNT = 10 THEN
      EXIT;
      END IF;
    END LOOP;
    DBMS_OUTPUT.PUT_LINE('V_COUNT循环后的值是:'||V_COUNT);
    END;
/

--FOR循环
/*
格式
FOR V_VAR IN (REVERSE) 10 .. 20
  LOOP
   do something;
   END LOOP;

*/
DECLARE
V_COUNT BINARY_INTEGER := 1;
BEGIN
  FOR V_COUNT IN 10 .. 20
    LOOP     
      DBMS_OUTPUT.PUT_LINE('V_COUNT=' || V_COUNT);
      IF V_COUNT  = 30 THEN
        EXIT;
        END IF;
      END LOOP;
      END;
/

--WHILE循环
/*
WHILE V_VAR < 20
  LOOP
    END LOOP;
*/
DECLARE
V_COUNT BINARY_INTEGER := 1;
BEGIN
  WHILE V_COUNT <= 10
    LOOP
      V_COUNT := V_COUNT + 1;
      DBMS_OUTPUT.PUT_LINE('V_COUNT=' || V_COUNT);
      END LOOP;
      END;
/

--条件退出LOOP循环
DECLARE
V_VAR NUMBER(4) := 1;
BEGIN
  LOOP
    V_VAR := V_VAR +2;
    EXIT WHEN V_VAR > 20;
    DBMS_OUTPUT.PUT_LINE('V_VAR = ' || V_VAR);
    END LOOP;
    END;
/

--条件CONTINUE  LOOP循环
DECLARE
V_VAR NUMBER(4) := 1;
BEGIN
  LOOP
    V_VAR := V_VAR +2;
    IF V_VAR < 10 THEN
     DBMS_OUTPUT.PUT_LINE('HELLO,WORLD;V_VAR = ' || V_VAR);
    END IF;
    CONTINUE WHEN V_VAR < 10;
    EXIT WHEN V_VAR > 20;
    DBMS_OUTPUT.PUT_LINE('V_VAR = ' || V_VAR);
    END LOOP;
    END;
/

抱歉!评论已关闭.