ORACLE异常处理总结
1:预定义异常 用于处理常见的Oracle错误
2:非预定义异常 用于处理预定义异常所不能处理的Oracle错误
3:自定义异常 用于处理于Oracle错误无关的其他情况
异常处理部分是以关键字EXCEPTION开始的,语法如下:
EXCEPTION
WHENexception_NameTHEN --exception_Name为异常的名字
statement1;
WHENOTHERSTHEN
statement1;
异常处理部分从关键字EXCEPTION开始,在异常处理部分使用WHEN字句捕捉各种异常,如果有其他未预定义到的异常,使用WHENOTHERSTHEN字句进行捕捉和处理。
1、处理预定义异常,这是系统预定的21种类型
错误代码是负整数,如-51
Access_info_null(ora-06530)
当访问没有初始化的对象时触发。
Case_not_found(ora-06592)
case过程中when后没有包含必要的条件分支并且没有else子句,则会触发本异常。
Collection_is_null(06531)
访问未初始化的集合元素(嵌套表或者varray)。
Cursor_already_open(ora-06511)
重新打开已经打开的游标。
Dup_val_on_index(ora-00001)
当中唯一索引所对应的列上键入重复值时。
Invalid_cursor(ora-01001)
试图在不合法的游标上执行操作时,譬如没打开游标就提取内容
Invalid_number(ora-01722)
当试图将非法的字符串转换为数字类型时。
No_data_found(ora-01403)
执行select into未返回行,或者引用了索引表未初始化的元素时。
Too_many_rows(ora-01422)
执行select into返回超过一行数据时。
Zero_divide(ora-01476)
0作为被除数时。
Subscript_beyond_count(ora-06533)
使用嵌套表或者varray集合时,如果引用下标超过last。
Subscript_outside_limit(ora-06532)
使用嵌套表或varray集合时,如果引用下标小于first。
Value_error(ora-06502)
在执行赋值操作时,如果变量长度不足以容纳实际数据。
Login_denied(ora-01017)
连接数据库时提供了不正确的用户名或口令。
Not_logged_on(ora-01012)
在程序没有连接到oracle数据库时执行plsql代码则会触发。
Program_error(ora-06501)
plsql内部问题。
Rowtype_mismatch(ora-06504)
执行赋值操作时,如果宿主游标变量和PLSQL游标变量返回类型不兼容时。
Self_is_null(ora-30625)
使用对象类型时,如果在null实例上调用成员方法。
Storage_
相关文档:
oracle表空间操作详解
1
2
3作者: 来源: 更新日期:2006-01-04
5
6
7建立表空间
8
9CREATE TABLESPACE data01
10DATAFILE '/ora ......
存储过程在服务器端早已编辑执行过的代码。用户要做的只是调用和接收存储过返回的结果。所以调用存储过程比普通的用查询语句返回值要快得多,存储过程的执行速度更快,存 储过程是保存起来的可以接受和返回用户提供的参数的 Transact-SQL 语句的集合。可以创建一个过程供永久使用,或在一个会话中临时使用(局部临时过 ......
在程序的开发过程中,处理分页是大家接触比较频繁的事件,因为现在软件基本上都是与数据库进行挂钓的。但效率又是我们所追求的,如果是像原来那样把所有满足条件的记录全部都选择出来,再去进行分页处理,那么就会多多的浪费掉许多的系统处理时间。为了能够把效率提高,所以现在我们就只选择我们需要的数据,减少数据 ......
Oracle
归档模式与非归档模式设置
Oracle
的日志归档模式可以有效的防止
instance
和
disk
的故障,在数据库故障恢复中不可或缺,由于
oracle
初始安装模式为非归档模式,因此需要将其设置为归档模式,下面就其方法和步骤做一些总结,虽然简单,但这是管理
oracle
数据库必备之工,故有如下陈述。
例子 ......
listener.ora、 tnsnames.ora和sqlnet.ora这3个文件是关系oracle网络配置的3个主要文件,其中listener.ora是和数据库服务器端 相关,而tnsnames.ora和sqlnet.ora这2个文件不仅仅关系到服务器端,主要的还是和客户端关系紧密。
检查客户端oracle网络的时候可以先检查sqlnet.ora文件:
# SQLNET.ORA Network Configuration ......