oracle异常使用

oracle异常以Exception开始,但是没有结束符号,所以只能放到语句的最后,这个是我自己认为的,不知道对不对,因为一直没有找到怎么结束一个异常的方法,就跟java异常一样,一个{}就是包括这段代码,后面可以继续写。

create or replace function fun_get()

return number is feetotal number;

begin
select fee into feetotal  from demo;
return feetotal;
Exception 
 when no_data_found then
   return 0;

end;

 这些异常是从网上找来的,大家可以参考下:

 

命名的系统异常                  产生原因 
 2
 access_into_null           未定义对象 
 3 CASE_NOT_FOUND             CASE 中若未包含相应的 WHEN ,并且没有设置 ELSE
 时 
 4
 COLLECTION_IS_NULL         集合元素未初始化 
 5
 CURSER_ALREADY_OPEN        游标已经打开 
 6
 DUP_VAL_ON_INDEX           唯一索引对应的列上有重复的值 
 7
 INVALID_CURSOR             在不合法的游标上进行操作 
 8
 INVALID_NUMBER             内嵌的 SQL 语句不能将字符转换为数字 
 9 NO_DATA_FOUND              使用 select into
 未返回行,或应用索引表未初始化的元素时 
10 TOO_MANY_ROWS              执行 select into
 时,结果集超过一行 
11 ZERO_DIVIDE                除数为 0
 
12
 SUBSCRIPT_BEYOND_COUNT     元素下标超过嵌套表或 VARRAY 的最大值 
13
 SUBSCRIPT_OUTSIDE_LIMIT    使用嵌套表或 VARRAY 时,将下标指定为负数 
14
 VALUE_ERROR                赋值时,变量长度不足以容纳实际数据 
15
 LOGIN_DENIED               应用程序连接到 oracle 数据库时,提供了不正确的用户名或密码 
16 NOT_LOGGED_ON              PL/
SQL 应用程序在没有连接 oralce 数据库的情况下访问数据 
17 PROGRAM_ERROR              PL/SQL 内部问题,可能需要重装数据字典& pl./
SQL 系统包 
18 ROWTYPE_MISMATCH           宿主游标变量与 PL/
SQL 游标变量的返回类型不兼容 
19 SELF_IS_NULL               使用对象类型时,在 null
 对象上调用对象方法 
20 STORAGE_ERROR              运行 PL/
SQL 时,超出内存空间 
21
 SYS_INVALID_ID             无效的 ROWID 字符串 
22
 TIMEOUT_ON_RESOURCE        Oracle 在等待资源时超时

你可能感兴趣的:(oracle,sql,Access)