Oracle入门课程:PL/SQL顺序结构goto和null
最新学讯:近期OCP认证正在报名中,因考试人员较多请尽快报名获取最近考试时间,报名费用请联系在线老师,甲骨文官方认证,报名从速!
我要咨询Oracle入门课程:PL/SQL顺序结构goto和null,在程序顺序结构中有两个特殊的语句。GOTO和NULL
·GOTO语句
GOTO语句将无条件的跳转到标签指定的语句去执行。标签是用双尖括号括起来的标示符,在PL/SQL块中必须具有唯一的名称,标签后必须紧跟可执行语句或者PL/SQL块。GOTO不能跳转到IF语句、CASE语句、LOOP语句、或者子块中。
·NULL语句
NULL语句什么都不做,只是将控制权转到下一行语句。NULL语句是可执行语句。NULL语句在IF或者其他语句语法要求至少需要一条可执行语句,但又不需要具体操作的地方。比如GOTO的目标地方不需要执行任何语句时。
案例8:GOGO 和 NULL
代码演示:GOTO和NULL
DECLARE sumsal emp.sal%TYPE; BEGIN
SELECT SUM(sal) INTO sumsal FROM EMP; IF sumsal>20000 THEN GOTO first_label; ① ELSE GOTO second_label; ② END IF; <<first_label>> ③ dbms_output.put_line('ABOVE
20000:' || sumsal); <<second_label>> ④ NULL; END; |
代码解析:
① 跳转到程序first_label位置,就是②的位置,first_label是一个标签,用两个尖括号包含。
② 无条件跳转到sedond_label位置,就是④的位置。④处不执行任何内容,因此是一个NULL语句。
与C#一样,在PL/SQL中,各种循环之间可以相互嵌套。