`
lxy2330
  • 浏览: 468754 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

PLSQL 异常处理

SQL 
阅读更多
1. 异常块

 

BEGIN
《PL/SQL块》;
Exception
when no_data_found then --没有找到数据
《响应命令》;
when too_many_rows then --返回多行,隐式光标每次只能检索一行数据
《响应命令》;
when invalid_number then --字符向数字转换失败
《响应命令》;
when zero_divide then --被零除
《响应命令》;
when dup_val_on_index then --向唯一索引中插入重复数据
《响应命令》;
when invalid_cursor then --非法游标操作
《响应命令》;
when value_error then --数字的,数据转换,截字符串或强制性的错误
《响应命令》;
when others then --发生其它任何错误
null; --选择一:什么也不做,就当错误没发生
raise form_trigger_failure; --选择二:挂起当前程序
END;

 

2.常用预定义例外

EXCEPTION
WHEN CURSOR_ALREADY_OPEN THEN -- ORA-06511 SQLCODE = -6511 游标已经打开
..WHEN DUP_VAL_ON_INDEX THEN -- ORA-00001 SQLCODE = -1 向唯一索引中插入重复数据
..WHEN INVALID_CURSOR THEN -- ORA-01001 SQLCODE = -1001 非法游标操作
..WHEN INVALID_NUMBER THEN -- ORA-01722 SQLCODE = -1722 字符向数字转换失败
..WHEN LOGIN_DENIED THEN -- ORA-01017 SQLCODE = -1017

..WHEN NO_DATA_FOUND THEN -- ORA-01403 SQLCODE = +100 没有找到数据
..WHEN NOT_LOGGED_ON THEN -- ORA-01012 SQLCODE = -1012
..WHEN PROGRAM_ERROR THEN -- ORA-06501 SQLCODE = -6501 程序错误
..WHEN STORAGE_ERROR THEN -- ORA-06500 SQLCODE = -6500
..WHEN TIMEOUT_ON_RESOURCE THEN -- ORA-00051 SQLCODE = -51

..WHEN TOO_MANY_ROWS THEN -- ORA-01422 SQLCODE = -1422 返回多行
..WHEN TRANSACTION_BACKED_OUT THEN -- ORA-00061 SQLCODE = -61

..WHEN VALUE_ERROR THEN -- ORA-06502 SQLCODE = -6502 数值转换错误
..WHEN ZERO_DIVIDE THEN -- ORA-01476 SQLCODE = -1476 被零除
..WHEN OTHERS THEN -- 其它任何错误的处理

 

3.获取异常信息

declare
v_errcode number;
v_errmsg varchar2(100);
...../省略
commit; --当没有异常的情况下,可以提交
exception
when others then --在有异常的情况下,怎么样得到异常信息了?
v_errcode := sqlcode;
v_errmsg := substr(sqlerrm,1,100);
 dbms_output.put_line('error code is' || v_errcode || ' error message is' || v_errmsg)
rollback;  --回滚
ReturnValue := 'false'; 
end;

 

分享到:
评论

相关推荐

    PLSQL总结 3异常处理及嵌套块.pdf

    PLSQL 异常处理及嵌套块 PLSQL 中的异常处理是一个非常重要的概念,它可以帮助开发者更好地处理代码中的错误,从而提高程序的稳定性和可靠性。本文将对 PLSQL 异常处理进行详细的介绍,包括什么是异常、异常处理...

    plsql&&oracle

    5. PLSQL异常处理: PLSQL的异常处理机制允许开发者预定义或自定义异常,并通过BEGIN...EXCEPTION...END结构来捕获和处理异常。这有助于提高程序的健壮性,确保在出现错误时能够优雅地处理。 6. PLSQL的游标: 游标...

    PLSQL语言初级教程

    5. **PLSQL异常处理** - **异常处理结构**:使用BEGIN...EXCEPTION部分来捕获和处理运行时错误。 - **预定义异常**:例如NO_DATA_FOUND、TOO_MANY_ROWS等,针对特定的数据库操作错误。 - **自定义异常**:创建...

    Oracle+PLSQL+语法手册 全面 详细 chm

    六、PLSQL异常处理 异常处理是PLSQL中非常重要的一部分,可以捕获和处理运行时错误。如使用EXCEPTION关键字定义异常处理块,捕获诸如NO_DATA_FOUND、TOO_MANY_ROWS等预定义异常,或者自定义异常。 七、PLSQL性能...

    plsql异常错误处理PPT教案.pptx

    plsql异常错误处理PPT教案.pptx

    基于oracle数据库的PLSQL编程以及存储过程的创建和使用资料.zip

    4. **PLSQL异常处理**: - 使用BEGIN...EXCEPTION...END结构来捕获和处理异常。 - 自定义异常可以使用RAISE语句抛出。 5. **存储过程**: - 存储过程是预编译的PLSQL代码块,存储在数据库中,可被多次调用。 - ...

    福建省电力公司oracle培训教材--PLSQL之游标与异常处理

    福建省电力公司oracle培训教材--PLSQL之游标与异常处理

    plsql资料--plsql资料

    这个压缩包“plsql.rar”包含了多个文档,详细讲述了PLSQL的相关知识点,包括其书写规则、语法、存储过程以及异常处理。 1. **PLSQL的书写及语法**: PLSQL的基本结构包括声明部分(DECLARE)、执行部分(BEGIN......

    PLSQL电子书小合集

    PLSQL的主要组成部分包括声明部分、执行部分和异常处理部分。在声明部分,你可以定义变量、常量、游标、过程和函数等;执行部分则包含SQL语句和PLSQL控制结构,如循环、条件判断等;异常处理部分帮助我们捕获和处理...

    PLSQL7.1经典版本

    6. **异常处理**:PLSQL的异常处理机制允许在程序中捕获并处理运行时错误。通过EXCEPTION关键字,可以定义特定的异常处理块,以优雅地处理错误,而不是让程序意外终止。 7. **游标**:游标用于在结果集中逐行处理...

    PLSQL 个人自学总结

    PLSQL由三个主要部分组成:声明部分、执行部分和异常处理部分。声明部分用于定义变量、常量、游标和过程;执行部分是实际执行的代码,包括SQL语句和PLSQL语句;异常处理部分则用于捕获和处理运行时可能出现的错误。 ...

    PLSQL 操作学习文档

    5. **异常处理**:学习PLSQL中的异常处理机制,如TRY-CATCH块,用于捕获和处理运行时错误,提高程序的健壮性。 6. **PLSQL Developer IDE的使用**:熟悉IDE的各项功能,如代码编辑器、调试器、对象浏览器、数据查看...

    PLSQL简易教程学过以后plsql不愁

    命名程序块可以出现在其他 PLSQL 程序块的声明部分,这方面比较明显的是子程序,子程序可以在执行部分引用,也可以在异常处理部分引用。 PLSQL 程序块可背独立编译并存储在数据库中,任何与数据库相连接的应用程序...

    PLSQL高级编程-结构化编程

    PLSQL由三部分组成:声明部分(DECLARE)、执行部分(BEGIN...END)和异常处理部分(EXCEPTION)。在声明部分,我们定义变量、游标、常量和子程序。执行部分是PLSQL的主要工作区,用于编写业务逻辑。异常处理部分则...

    《Oracle PLSQL 从入门到精通》.zip

    PLSQL还提供了异常处理机制,通过EXCEPTION关键字定义异常处理块,可以捕获并处理如 division_by_zero(除以零)、too_many_rows(多行结果)或no_data_found(无数据找到)等常见数据库异常。 学习Oracle PLSQL的...

    PLSQL操作ORALCE数据库

    PLSQL程序由块组成,包括声明部分、执行部分和异常处理部分。声明部分用于定义变量、常量、游标和子程序;执行部分包含SQL语句和PLSQL语句,用于执行实际操作;异常处理部分则用于捕获和处理运行时错误。 二、变量...

    plsql工具很好用

    PLSQL的主要组成部分包括声明部分(Declarations)、执行部分(Executable Section)和异常处理部分(Exception Handling)。在声明部分,你可以定义变量、游标、常量、记录类型等;执行部分则是编写SQL语句和过程化...

    PLSQL应用程序开发

    - **异常处理**:PLSQL提供了强大的异常处理机制,允许开发者定义并处理预定义或自定义的异常。 - **可重用的代码组件**:如包(`PACKAGES`)、函数(`FUNCTIONS`)、过程(`PROCEDURES`)、触发器(`TRIGGERS`)等...

    PLSQL程序设计

    PLSQL由三部分组成:声明部分(DECLARATION)、执行部分(EXECUTION)和异常处理部分(EXCEPTION HANDLING)。声明部分用于定义变量、常量、游标、记录类型等;执行部分包含SQL语句和PLSQL控制结构;异常处理部分则...

    PLSQL数据库应用

    1. **PLSQL基本语法**:PLSQL由声明部分、执行部分和异常处理部分组成。声明部分定义变量、常量、游标等;执行部分包含SQL语句和PLSQL语句;异常处理部分用于捕获和处理运行时错误。 2. **PLSQL块**:包括匿名块、...

Global site tag (gtag.js) - Google Analytics