PL/SQL基础:顺序结构goto和null
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中,各种循环之间可以相互嵌套。
-
标签错误:<!-- #Label#
labelId=20160707140604
moduleId=1
classId=12231768634
orderby=2
fields=url,title,u_info
attribute=
datatypeId=22192428132
recordCount=3
pageSize=
<htmlTemplate><dt><img src="/images/index_26${index}.jpg" width="100" height="62" /><a href="$url" title="${title}">${title}</a><span>${api.left(u_info,60)}</span></dt></htmlTemplate>
-->
- 我要参加技术沙龙