oracle-关于Oracle的异常处理

问题描述

关于Oracle的异常处理


DECLARE
null_salary EXCEPTION;
PRAGMA EXCEPTION_INIT (null_salary, -20101);
BEGIN
RAISE_APPLICATION_ERROR(-20101,'有异常a');
EXCEPTION
WHEN null_salary THEN
dbms_output.put_line('b');
RAISE_APPLICATION_ERROR(-20101,'有异常b');
END;

这样输出异常b会执行exception中的代码。为什么会忽略异常a呢?

DECLARE
null_salary EXCEPTION;
PRAGMA EXCEPTION_INIT (null_salary, -20101);
BEGIN
RAISE_APPLICATION_ERROR(-20103,'有异常a');
EXCEPTION
WHEN null_salary THEN
dbms_output.put_line('b');
RAISE_APPLICATION_ERROR(-20101,'有异常b');
END;

这样会输出异常a,但是这个异常是没有预先定义的。请问代码1段的那种情况怎么合理的避免或者运用呢?这种值栈当中的覆盖会引起逻辑上的混乱吗?如果我不小心抛出了同样的异常是会引起exception的代码能执行,这种情况在开发中有办法避免吗吗?

时间: 2024-12-24 00:58:30

oracle-关于Oracle的异常处理的相关文章

oracle 定时任务-oracle spool定时导出数据脚本 周末无法导出 求解啊

问题描述 oracle spool定时导出数据脚本 周末无法导出 求解啊 定时任务定时每天凌晨3点导出数据,刚开始几天都正常导出,一到周天就导出个空文件了,sql测试过当天是有数据的,环境变量打印出来也是正常的,求解啊: 定时任务: #!/bin/bash . /home/unpay/etc/.profile echo "test"$DBI_CONNSTR export NLS_LANG="SIMPLIFIED CHINESE_CHINA.ZHS16GBK" /s0

Ubuntu 14.04搭建PHP5+Apache2+Oracle及Oracle管理软件SQL Developer

Ubuntu 14.04搭建PHP5+Apache2+Oracle环境 最近开发的一个项目,数据库使用Oracle.Oracle本身支持Red Hat,对Ubuntu的支持并不好,如果Ubuntu需要安装Oracle,系统本身需要做伪装等很多工作,所以我只打算使用远程服务器上的Oracle数据库. 本地环境: Linux xxx-ThinkPad-T400 3.13.0-46-generic #75-Ubuntu SMP Tue Feb 10 15:24:04 UTC 2015 x86_64 x

oracle针对oracle和grid用户---环境变量设置---单实例和RAC

一 单实例的创建GI+单实例数据库 分别使用grid用户和oracle用户 oracle用户   export  ORACLE_SID=sdb export  ORACLE_UNQNAME=sdb export  JAVA_HOME=/usr/local/java export  ORACLE_BASE=/u01/oracle export  ORACLE_HOME=$ORACLE_BASE/11.2.3 export OGG_HOME=$ORACLE_BASE/ogg export LD_LI

DataX实现oracle到oracle之间数据传递

文章讲的是DataX实现oracle到oracle之间数据传递,首先需要注意的是DATAX是通过JDBC的方式读取ORACLE数据,然后通过OCI的方式写数据,DX也可以通过JDBC写的方式进行,但是OCI比JDBC速度更快. 进入DataX安装目录的bin目录,执行命令 ./datax.py -e 输入交换数据数据库对应的代码,它会自动生成相应的xml配置文件 编辑配置文件参数,有"?"的是必须配置的,默认的可以保持不变 执行代码: vi /home/taobao/datax/job

利用dblink实现oracle对oracle数据库的同步

利用dblink 做oracle到oracle的定时同步,以刚为卡中心做的一个同步为例 1.创建需要的dblink连接的数据库(若已经有,则不需要) 例: 查看 dblink : select * from dba_db_links; 创建 dblink : create database link ECARDRYXX connect to WPENG using '(DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST =

oracle cli...-oracle,oracle client和plsql的一些问题

问题描述 oracle,oracle client和plsql的一些问题 1.我要用plsql连接本地oracle,是不是这三样都要装?要不要配置环境变量?要的话配置哪几个? 2.oracle根目录下的NETWORK/ADMIN/里面的文件可以删掉会有影响吗?全是自动生成的?以前我记得有一堆文件,删了后生成的只有listener.ora和tnsnames.ora了,如果有影响该怎么办? 3.oracle client和plsql直接卸载能卸载干净吗? 4.oracle我要想配置系统默认的其他用户

oracle应用服务器(oracle application server)性能监控问题

问题描述 oracle应用服务器(oracle application server)性能监控问题 oracle应用服务器(oracle application server)性能监控问题,哪位大哥能提供或指点下怎么利用oracle DMS实现oracle应用服务监控呀,最好是提供一个demo,感激不尽! 解决方案 http://wenku.baidu.com/link?url=nI39XAliv0001zBSCa4h8pDQgu0T13e4KEP9ealY-vGqmBpPVnEvZOYDe8t

Oracle实例和Oracle数据库(Oracle体系结构)

--========================================== --Oracle实例和Oracle数据库(Oracle体系结构) --========================================== /*     对于初接触Oracle 数据库的人来讲,很容易混淆的两个概念即是Oracle 实例和Oracle 数据库.这两 概念不同于SQL sever下的实例与数据库,当然也有些相似之处.只是在SQL server我们根本不需要花费太 多的精力去搞清

如何在ECS上搭建Oracle?Oracle云上云下6种架构全解析

在2016杭州云栖大会第二日,袋鼠云联合创始人丁原在飞天服务专场分享了<EasyDB for Oracle--基于阿里云的Oracle最佳实践>.他主要从云上Oracle可行性分析.云上Oracle数据库架构.EasyDB for Oracle三个方面进行了分享,详细介绍了Oracle传统架构.云下(传统)经典数据库架构.Oracle云上4种架构的实现和优缺点. 以下内容根据演讲PPT及现场分享整理. 可行性分析 数据库关注点 不管是线上还是线下,数据库应该关注什么?第一,性能好坏.第二,数据

Chapter1:Oracle 10g Oracle DAB [Oracle? Database 2 Day DBA

oracle Oracle DAB 两日速成课程   本课程的目的是补充 DBA 两日速成 (2 Day DBA) 手册.在本课程中,您将了解到关于在 DBA 两日速成 (2 Day DBA) 手册中概述的任务的详细信息,并包括逐步指导.要查看本课程的资料,请单击下面的章节标题: 课程列表 1 管理数据库的要素是什么(没有本章对应的附加资料) 2 安装 Oracle 和构建数据库 3 Oracle Enterprise Manager 数据库控制入门 4 配置网络环境 5 管理 Oracle 例