- 浏览: 62912 次
- 性别:
- 来自: 深圳
-
文章分类
最新评论
对exception的用户比较糊涂,专门记录总结一下,方便自己查看
plsql的异常处理通常是处理运行异常
声明异常:
1.用户自定义异常
declare e_myexception EXCEPTION;
2.系统预定义异常
常见:
no_data_found:出现在select into
invalid_cursor:非法的游标
value_error:转换,运算
抛出异常:与java异常抛出类似
raise myexception
处理异常:某个异常最多由异常部门一个处理器进行处理
exception
when 异常名 then
执行语句;
when 异常名 then
执行语句;
when OTHERS THEN
执行语句;
END;
others异常处理其他异常所不能捕获的异常
在others中记录具体错误 SQLCODE,SQLERRM
V_errcode := SQLCODE;
V_errortext := SQLERRM;
insert into log values (v_errcode,v_errortext);
exception_init编译指示
把某异常与特定的oracle错误关联起来
declare
e_missingnull exception;
pragma exception_init(e_missingnull,-1200);
raise_application_error创建自己的错误消息
raise_application_error(error_number,error_message,[keep_errors]);
error_number:-20000和-20999之间的数字
error_message:自定义小于512个字符
keep_errors:默认为false
异常的传播:
1.如果当前语句块有该异常处理器,执行,完成该语句块,控制权传递到外层
2.如果当前语句块没有该异常处理器,则通过外部语句块来传播该异常
3.声明部门异常,直接调到外层异常处理
plsql的异常处理通常是处理运行异常
声明异常:
1.用户自定义异常
declare e_myexception EXCEPTION;
2.系统预定义异常
常见:
no_data_found:出现在select into
invalid_cursor:非法的游标
value_error:转换,运算
抛出异常:与java异常抛出类似
raise myexception
处理异常:某个异常最多由异常部门一个处理器进行处理
exception
when 异常名 then
执行语句;
when 异常名 then
执行语句;
when OTHERS THEN
执行语句;
END;
others异常处理其他异常所不能捕获的异常
在others中记录具体错误 SQLCODE,SQLERRM
V_errcode := SQLCODE;
V_errortext := SQLERRM;
insert into log values (v_errcode,v_errortext);
exception_init编译指示
把某异常与特定的oracle错误关联起来
declare
e_missingnull exception;
pragma exception_init(e_missingnull,-1200);
raise_application_error创建自己的错误消息
raise_application_error(error_number,error_message,[keep_errors]);
error_number:-20000和-20999之间的数字
error_message:自定义小于512个字符
keep_errors:默认为false
异常的传播:
1.如果当前语句块有该异常处理器,执行,完成该语句块,控制权传递到外层
2.如果当前语句块没有该异常处理器,则通过外部语句块来传播该异常
3.声明部门异常,直接调到外层异常处理
发表评论
-
oracle11g提示服务不可用
2014-09-26 17:36 586今天遇到一个问题,本地1521端口启用,但远程不能访问 修改监 ... -
手工用户创建,老是记不住,记录
2014-09-18 13:53 332Oracle创建表空间、创建用户以及授权、查看权限 创建临 ... -
gdul
2014-08-15 15:16 480一直想自己也写个dul工具,无奈理解得不够深入 几天前看到别人 ... -
SQL调优
2014-06-20 14:14 399网上看到如下sql: 留一个线索在此 select /*+ ... -
表闪回
2014-06-19 16:13 347使用delete删除数据的情况,如果是truncate只能用数 ... -
外键约束
2014-06-19 16:02 395删除一个表时,提示有外键约束,ORA-02292: 违反完整约 ... -
get_ddl使用
2014-05-19 16:45 433查看oracle中表定义等,需要使用dbms_metadata ... -
PL/SQL语法
2014-05-09 11:38 393今天写plsql,很久没写了,很简单的,也不想参看以前写的,怎 ... -
归档日志满的处理
2014-05-04 10:07 781只是一个记录贴,方便查阅。完全没有新意 归档日志一般需要保留 ... -
数据的导出导入
2013-12-30 12:41 360异构数据库之间数据交换,主要使用txt文本文件 以下记录一个工 ... -
exp增量
2013-12-17 17:09 356很久没有写文章了,今天遇到一个老问题,exp增量备份 记 ... -
查找oracle的操作日志
2013-12-17 16:48 567今天程序有些功能不能用了,查了一下,发现某些表对象删除了 ... -
数结构的查询
2013-09-27 18:33 0很早之前就使用过该功能,每次都记不住,每次都要搜索 索性记录一 ... -
面试中的SQL
2013-09-27 12:07 472虽然有些时间没有面试过了 在我的印象中,sql中行列转换的问题 ... -
oracle SQL特性使用
2013-09-27 11:25 392oracle分析函数 统计记录中类似1/222这样的记录 se ... -
oracle内部原理
2013-09-26 11:17 962总是以为对oracle很了解,已经使用了好多年,基本是增、删、 ... -
oracle跟踪程序执行的SQL
2013-09-24 15:34 1120专门记录一下,对于系统调优很重要 1.oracle的10046 ... -
ORA-01555处理
2013-09-22 16:44 600有时表太大,导出时出现1555错误,可以采用分段方式处理。 以 ... -
BLOB字段操作
2013-09-18 10:00 894置为空或NULL update blob_test set b ... -
统计表的大小
2013-09-11 17:29 376统计用户表的大小: SELECT * FROM ( SEL ...
相关推荐
### PLSQL Developer无法连接64位Oracle的解决方法 在IT行业中,开发人员经常会遇到工具与数据库兼容性问题,其中一个常见的问题是PLSQL Developer无法连接到64位版本的Oracle数据库。由于PLSQL Developer本身并不...
在使用PLSQL开发时,开发者需要理解并熟练运用PLSQL的语法,例如声明变量、使用流程控制语句(IF-THEN-ELSE, CASE, FOR循环)、异常处理(BEGIN-EXCEPTION-END块)以及如何调用和定义数据库对象。同时,熟悉Oracle的...
本文将深入探讨PLSQL绿色免安装版的特点、配置方法以及其在数据库管理中的应用。 PLSQL绿色免安装版是一款轻量级的数据库管理工具,无需复杂的安装过程,用户只需解压文件即可开始使用。这为那些需要在不同计算机间...
10. **PLSQL的性能优化**:通过索引、存储优化、批量处理、减少网络往返等方法,可以提高PLSQL代码的执行效率。 通过阅读“PLSQL.pdf”,学习者将能够了解和掌握这些基本概念,进一步提升在Oracle数据库环境中的...
1. **PLSQL块结构**:PLSQL代码通常由三部分组成:声明部分(Declaration)、执行部分(Execution)和异常处理部分(Exception Handling)。声明部分定义变量和常量;执行部分包含SQL和PLSQL语句;异常处理部分用于...
这个资料包中的"video2.swf"可能是一个视频教程,通过实际示例讲解了PLSQL的使用方法和最佳实践,对于初学者来说是非常有价值的资源。 在学习过程中,建议先从基础语法入手,逐步了解和熟悉PLSQL的各种特性。然后,...
这个"PLSQL详细手册"显然是一个深入介绍PLSQL语法和用法的资源,对于学习和理解Oracle数据库编程至关重要。 在PLSQL中,你可以编写存储过程、函数、触发器、游标,以及处理异常,从而实现复杂的业务逻辑和数据操作...
在“宋红康关于oracle连接工具plsql课程”的相关课件中,可能涵盖如何在PL/SQL Developer中创建、修改和执行这些对象的方法。 1. **PL/SQL基本语法**:PL/SQL的语法结构类似于C语言,包括声明变量、控制流程(如IF-...
在PL/SQL中,可以使用DECLARE关键字来声明变量,例如: ```sql DECLARE num_var NUMBER; str_var VARCHAR2(20); BEGIN -- 代码段 END; ``` 四、PL/SQL的流程控制 PL/SQL提供了一系列的流程控制语句,如IF...THEN...
PLSQL由三部分组成:声明部分(DECLARATION)、执行部分(EXECUTION)和异常处理部分(EXCEPTION HANDLING)。声明部分用于定义变量、常量、游标、记录类型等;执行部分包含SQL语句和PLSQL控制结构;异常处理部分则...
3. **异常处理部分(Exception Handling)**:通过BEGIN...EXCEPTION...END结构,PLSQL允许程序员处理运行时可能出现的错误或异常。 4. **块结构(Blocks)**:PLSQL支持三种类型的块:匿名块、子程序(存储过程和...
下面将详细阐述PL/SQL的基础知识和使用方法。 1. PL/SQL的基本结构 PL/SQL由声明部分、执行部分和异常处理部分组成。声明部分用于定义变量、常量、游标和过程;执行部分包含SQL语句和PL/SQL控制结构;异常处理部分...
6. **异常处理**:PLSQL的异常处理通过BEGIN...EXCEPTION...END结构实现,7.0可能提供了更丰富的预定义异常或更灵活的异常处理策略。 7. **包(Packages)**:包是组织PLSQL代码的有效方式,包含相关的常量、类型、...
本文详细介绍了PL/SQL中游标的使用方法,包括游标的声明、打开、读取、关闭以及如何在不同的循环结构中使用游标。通过示例演示了如何利用游标处理查询结果,并结合条件判断和异常处理来增强程序的健壮性和灵活性。...
"plsql经典版"可能指的是一个稳定、广泛使用的PL/SQL版本,它在功能、性能和兼容性上都有出色的表现,因此被誉为“经典”。 PL/SQL的主要特点包括: 1. **结构化编程**:PL/SQL支持流程控制语句,如IF-THEN-ELSIF-...
7. **异常处理**:通过BEGIN...EXCEPTION...END结构,PLSQL提供了内置的异常处理机制,可以捕获和处理如ORA-00001这样的特定数据库错误,以及用户自定义的异常。 8. **事务管理**:PLSQL支持BEGIN、COMMIT、...
- `尚硅谷_plsql.pdf`很可能是整个PLSQL语言的概述,包括变量声明、控制结构(如IF-THEN-ELSE、LOOP)、异常处理(EXCEPTION)等内容。 通过学习这些材料,不仅可以掌握PLSQL的基本语法和操作,还能深入了解Oracle...
4. **异常处理**:PLSQL提供了一个强大的异常处理机制,通过EXCEPTION部分来捕获和处理运行时错误,增强了程序的健壮性。 5. **存储过程与函数**:存储过程是一组预编译的SQL和PLSQL语句,可以接受参数并返回结果。...
了解这些块的作用和用法是PLSQL学习的关键。 9. **存储过程和函数**:学习如何创建和调用存储过程和函数,它们是PLSQL中的可重用代码单元,可以提高代码的复用性和效率。 10. **数据库对象**:了解如何在PLSQL中...