【PL/SQL】异常处理:
如果在PLSQL块中没有做异常处理,在执行PLSQL块时,出现异常,会传递到调用环境,导致程序运行出错!
SCOTT@ prod> declare
2
3 v_ename emp.ename%type;
4 v_sal emp.sal%type;
5
6 begin
7
8 select ename,sal into v_ename,v_sal from emp where deptno=&n;
9
10 dbms_output.put_line(v_ename||':'||v_sal);
11
12
13 end;
1.预定义异常:
TOO_MANY_ROWS  在隐式游标处理时,select 返回行数超过一行
SQL> declare
2
3 v_ename emp.ename%type;
4 v_sal emp.sal%type;
5
6 begin
7
8 select ename,sal into v_ename,v_sal from emp where deptno=&n;
9
10 dbms_output.put_line(v_ename||':'||v_sal);
11
12 exception
13 when too_many_rows then
14 dbms_output.put_line('You return rows more than one !');
15 when others then
16 dbms_output.put_line('Other''s error !');
17 end;
2.NO_DATA_FOUND 在访问数据时,没有发现数据。
SQL> declare
2
3 v_ename emp.ename%type;
4 v_sal emp.sal%type;
5
6 begin
7
8 select ename,sal into v_ename,v_sal from emp where empno=#
9
10 dbms_output.put_line(v_ename||':'||v_sal);
11
12 exception
13 when no_data_found then
14 dbms_output.put_line('No data found ,Please input correct number !');
15 when others then
16 dbms_output.put_line('Other''s error !');
17 end;
3.ZERO_DIVIDE 除数为零
SQL> declare
2
3 v_num1 number :=10;
4 v_num2 number ;
5 v_num3 number;
6
7 begin
8 v_num2 := &nn;
9
10 v_num3 := v_num1 / v_num2 ;
11
12 dbms_output.put_line( 'Number is : '||v_num3);
13 exception
14 when zero_divide then
15 dbms_output.put_line( 'Divisor is equal to zero,Please input correct Number !');
16 when others then
17 dbms_output.put_line('Other''s error !');
18 end;
【PL/SQL】异常处理:的更多相关文章
- PL/SQL异常处理方法
		PL/SQL异常处理方法 1:什么是异常处理: PL/SQL提供一个功能去处理异常,在PL/SQL块中叫做异常处理,使用异常处理我们能够测试代码和避免异常退出. PL/SQL异常信息包含三个部分: ... 
- Oracle数据库之PL/SQL异常处理
		Oracle数据库之PL/SQL异常处理 异常指的是在程序运行过程中发生的异常事件,通常是由硬件问题或者程序设计问题所导致的. PL/SQL程序设计过程中,即使是写得最好的程序也可能会遇到错误或未预料 ... 
- PL/SQL异常处理
		As we all known,程序的错误一般分为两类:编译错误和运行时错误.其中运行时错误被称为异常.PL/SQL语句块中处理异常的部分即为异常处理部分.在异常处理部分,可以指定当特定异常发生时所采 ... 
- ORACLE PL/SQL异常处理(Exception)学习笔记
		1.PL/SQL错误类型 错误类型 报告者 处理方法 编译时错误 PL/SQL编译器 交互式地处理:编译器报告错误,你必须更正这些错误 运行时错误 PL/SQL运行时引擎 程序化地处理:异常由异常处理 ... 
- PL/SQL 异常处理
		SQL> set serveroutput on SQL> declare name varchar2(10); begin select ename into name from ... 
- Oracle笔记 七、PL/SQL 异常处理
		--异常处理 declare sNum number := 0; begin sNum := 5 / sNum; dbms_output.put_line(sNum); exception when ... 
- Oracle PL/SQL 异常处理
		Oracle数据库中的异常:没有异常的转移,因为没有受检异常和非受检异常得区分. 1.异常的产生: 2.异常的处理: declare --变量定义,初始化赋值. begin --变量的赋值,函数调用, ... 
- ORACLE PL/SQL编程详解
		ORACLE PL/SQL编程详解 编程详解 SQL语言只是访问.操作数据库的语言,并不是一种具有流程控制的程序设计语言,而只有程序设计语言才能用于应用软件的开发.PL /SQL是一种高级数据库程序设 ... 
- PL/SQL 基础编程
		PL/Sql 编程 PL/Sql结构 [declare] --声明变量 begin --执行部分 [exception] ---异常处理部分 end PL/Sql 基本数据类型 数值类型 1. nu ... 
- [推荐]ORACLE PL/SQL编程之五:异常错误处理(知已知彼、百战不殆)
		原文:[推荐]ORACLE PL/SQL编程之五:异常错误处理(知已知彼.百战不殆) [推荐]ORACLE PL/SQL编程之五: 异常错误处理(知已知彼.百战不殆) 继上三篇:ORACLE PL/S ... 
随机推荐
- DNS查询指令nslookup
			描述: Nslookup指令是一个查询internet域名服务的程序.Nslookup指令有两个模式:交互式和非交互式. 交互式模式允许用户查询不同种类的主机和域名或在一个域名里输出主机列表,目的是查 ... 
- DBA_Oracle Erp加密和解密账户密码(案例)
			2014-09-09 Created By BaoXinjian 
- NeHe OpenGL教程  第五课:3D空间
			转自[翻译]NeHe OpenGL 教程 前言 声明,此 NeHe OpenGL教程系列文章由51博客yarin翻译(2010-08-19),本博客为转载并稍加整理与修改.对NeHe的OpenGL管线 ... 
- linux命令(2):df 磁盘占用
			在这里先讲讲linux命令df的资料: df 命令: linux中df命令的功能是用来检查linux服务器的文件系统的磁盘空间占用情况.可以利用该命令来获取硬盘被占用了多少空间,目前还剩下多少空间等信 ... 
- AI
- vim常用命令笔记(转载)
			添加多行注释: 1. 首先按esc进入命令行模式下,按下Ctrl + v,进入列(也叫区块)模式; 2. 在行首使用上下键选择需要注释的多行; 3. 按下键盘(大写)“I”键,进入插入模式 ... 
- Python进阶09 动态类型
			作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 谢谢TeaEra, 猫咪cat 动态类型(dynamic typing)是Pyth ... 
- 利用 Gitbook 生成文档中心站点
			经过一个多月,Bugtags 最近上线了自己的文档站点:docs.bugtags.com,在这里你可以找到 Bugtags 集成.使用相关的绝大部分问题. 在这之前我们使用的是第三方提供的帮助中心产品 ... 
- (medium)LeetCode  210.Course Schedule II
			There are a total of n courses you have to take, labeled from 0 to n - 1. Some courses may have prer ... 
- adb shell am force-stop <package>
			•adb shell am force-stop <package>关闭程序的adb命令 
