No_data_found 很容易理解就是没有数据返回。
Too_many_rows 在我们使用 select ... into 的时候这种错误经常的会发生,就是因为其返回了多条内容。
zero_divide 被0除
value_error 算术或转换错误
timeout_on_resource 在等待资源时发生超时
例外定义:程序设计语言的一种功能,用来增强程序(PL/SQL程序)的健壮性和容错性。
可以通过查看oracle文档了解例外的使用。





PL/SQL中的例外可以分为两种:
1、Internally defined——》系统例外,这种例外是oracle事先定义好的。
举例:这里介绍如图所示几种系统例外。这里的资源等待超时的产生场景会在分布式数据库情况下发生。


分布式数据库:两个数据库物理上不是一个数据库,但是逻辑上是一个数据库,其中一个数据库访问另一个数据库,但是由于某些原因一直没有返回数据,此时就会有一个时间,超过这个时间,就会产生这个Timeout_on_resource这个例外。

2、user defined——》自定义例外,我们自己定义一个例外。
例外是程序设计语言提供一种功能,用来增强程序的健壮性和容错性
系统例外
no_data_found 没有找到数据
too_many_rows select..into语句匹配多个行
Zero_Divide 被零除
Value_error 算数或转换错误
timeout_on_resource 在等待资源时发生超时
系统例外
No_data_found (没有找到数据)
Too_many_rows (select ...into 语句匹配多个行)
PLSQL中的例外
例外是程序设计语言提供的一种功能,用来增强程序的健壮性和容错性
系统例外
No_data_found (没有找到数据)
Too_many_rows (select...into 语句匹配多个行)
Zero_Divide (被零除)
Value_error(算术或转换错误)
Timeout_on_resource (在等待资源是发生超时)
系统例外
No_data_found (没有找到数据)
Too_many_rows (select ...into语句匹配多个行)
Zero_Divide (被零除)
Value_error (算术或转换错误)
Timeout_on_resource (在等待资源时发生超时)
Oracle中的列外
数据库系统定义的例外:

分布式数据库
系统例外(续)
系统例外
系统例外
系统例外(续)
系统例外
例外:是程序设计语言提供的一种功能,用来增强程序的健壮性和容错性
系统例外
分布式数据库访问超时