• 博客园logo
  • 会员
  • 周边
  • 新闻
  • 博问
  • 闪存
  • 众包
  • 赞助商
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
雾里看花
博客园    首页    新随笔    联系   管理    订阅  订阅

PL/SQL学习笔记三:PL/SQL流程控制语句

PL/SQL的流程控制语句包括如下三类:

    1>、控制语句:IF语句;

    2>、循环语句:LOOP语句,EXIT语句;

    3>、顺序语句:GOTO语句,NULL语句。

 

条件语句

    IF <布尔表达式> THEN

        PL/SQL和SQL语句

    END IF;

 

    IF <布尔表达式> THEN

        PL/SQL和SQL

    ELSE

        其它语句

    END IF;

 

    IF <布尔表达式> THEN

        PL/SQL和SQL

    ELSIF <其它布尔表达式> THEN

        其它语句

    ELSIF <其它布尔表达式> THEN

        其它语句

    ELSE

        其它语句

    END IF;

 

CASE表达式

    CASE selector

        WHEN expression1 THEN result1

        WHEN expression2 THEN result2

        ... ...

        WHEN expressionN THEN resultN

        [ELSE resultN+1]

    END;

 

循环

    1>、简单循环

           LOOP

               要执行的语句;

               EXIT WHEN <条件语句>          /*条件满足,退出循环语句*/

           END LOOP;

    2>、WHILE循环

           WHILE <布尔表达式> LOOP

               要执行的语句;

           END LOOP;

    3>、数字式循环

           FOR循环计数器IN(或者REVERSE)下限 .. 上限 LOOP

               要执行的语句;

           END LOOP;

 

标号和GOTO

PL/SQL中GOTO语句是无条件跳转到指定的标号去的意思。语法如下:

    GOTO label;

    ... ...

    <<label>>     /*标号是用<< >>括起来的标识符*/

 

NULL语句

在PL/SQL程序中,可以使用null语句来说明“不用做任何事情”的意思,相当于一个占位符,可以使某些语句变得有意义,提高程序的可读性。eg:

    DECLARE

        ...

    BEGIN

        ...

        IF v_num IS NULL THEN

            GOTO print2;

        END IF;

        ...

        <<print1>>

        NULL;           --不需要处理任何数据。

    END;

posted @ 2012-09-26 14:36  雾里看花  阅读(192)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3