Oracle 中的GOTO,RETURN,EXIT
来源:互联网 发布:制作一个php图形计算器 编辑:程序博客网 时间:2024/05/23 15:44
1.GOTO,主要用于跳转,但会打乱我们的程序逻辑,一般不使用,它可以实现RETURN,EXIT的功能
2.RETURN,返回程序末尾,结束程序
3.EXIT,主要用于退出当前循环,相当于java中的break.
4.要实现java中continue的功能可以使用自定义异常的方式
它们之间的比较
- --这里的GOTO相当于下面的EXIT用法
- BEGIN
- FOR i IN 1..3 LOOP
- IF i=2 THEN
- GOTO label;
- END IF;
- dbms_output.put_line('i='||i);
- END LOOP;
- <<label>>
- dbms_output.put_line('the last...');
- END;
- /
- i=1
- the last...
- PL/SQL procedure successfully completed.
- BEGIN
- FOR i IN 1..3 LOOP
- IF i=2 THEN
- --GOTO label;
- EXIT;
- END IF;
- dbms_output.put_line('i='||i);
- END LOOP;
- <<label>>
- dbms_output.put_line('the last...');
- END;
- /
- i=1
- the last...
- PL/SQL procedure successfully completed.
- BEGIN
- FOR i IN 1..2 LOOP
- IF i=2 THEN
- --GOTO label;
- --EXIT;
- RETURN;
- END IF;
- dbms_output.put_line('i='||i);
- END LOOP;
- <<label>>
- dbms_output.put_line('the last...');
- END;
- /
- i=1
- PL/SQL procedure successfully completed.
- --下面相当于上面的RETURN
- BEGIN
- FOR i IN 1..3 LOOP
- IF i=2 THEN
- GOTO label;
- --EXIT;
- --RETURN;
- END IF;
- dbms_output.put_line('i='||i);
- END LOOP;
- dbms_output.put_line('the last...');
- <<label>>
- NULL;--这个NULL不能省略,<<label>>不能在END;END LOOP;等之前
- END;
- /
- i=1
- PL/SQL procedure successfully completed.
自定义异常的方式实现continue的功能
- DECLARE
- e_My_Exception EXCEPTION;
- --PRAGMA EXCEPTION_INIT (e_My_Exception, -1401);
- BEGIN
- FOR i IN 1..3 LOOP
- BEGIN
- IF i=2 THEN
- RAISE e_My_Exception;
- END IF;
- dbms_output.put_line('i='||i);
- EXCEPTION
- WHEN e_My_Exception THEN
- NULL;
- END;
- END LOOP;
- dbms_output.put_line('the last...');
- END;
- /
0 0
- Oracle 中的GOTO,RETURN,EXIT
- Oracle 中的GOTO,RETURN,EXIT
- 转Oracle 中的GOTO,RETURN,EXIT
- Oracle循环中的EXIT、RETURN、CONTINUE解密
- FORTRAN 中的goto/exit/cycle
- oracle 存储过程循环体中的return和exit区别:
- Oracle 顺序控制GOTO语句(exit,continue)
- C# 中的 break ,goto ,contitue ,return 语句
- C语言中的return ,exit
- ORACLE数据库中的RETURN与EXIT在循环中使用小议
- Oracle 中Return 和exit的区别
- Oracle中Exit与Return用法
- Exit 与 Goto :eof 在批处理中的区别
- Exit 与 Goto :eof 在批处理中的区别
- Exit 与 Goto :eof 在批处理中的区别
- PL/SQL 程序包中的EXIT和RETURN
- C语言中的return,exit,break,continue
- C语言中的return,exit,break,continue
- 关于宏的特殊用法
- php获取图片信息
- apache 和 tomcat 的区别
- 搬运工 Struts2 XML配置详解
- PHP递归文件目录获取
- Oracle 中的GOTO,RETURN,EXIT
- delphi中 数据类型转换
- The application may be doing too much work on its main thread
- java模拟Filter,FilterChain的实现
- 红黑树
- 文化部办公厅关于开展第十九批违法违规互联网文化活动查处工作的通知
- Sublime Text3 Java编程环境的搭建
- hive 自定义函数UDF,UDAF
- jquery easyui 显示spring mvc处理异常信息