Oracle数据库自定义异常的使用方法

全志T113s3主线linux开发(0)--基础准备 嵌入式Linux设备的启动大概是三步:1)启动芯片+内存:常见的是Uboot,不过全志的Uboot主线对SPI NAND 不太友好,用TF卡就方便。对于T113S芯片,推荐使用Awboot,简陋但快速。开发阶段用这个就方便好多,对SPINAND支持也方便。2)启动linux内核:主线内核以下通篇都用6.13以上的内核。对比tina5.0还在用5.4 ,主要是性能、安全上有变化。6.0以上内核在devicetree的编写具体格式上有了变化,网上大量tina5.0和5.4内核的编写方式不适用。 阅读详情

 来源:不详  作者:佚名  时间:2009-9-6 17:14:04 Tags: Orac 使用方法

 

需求:业务逻辑在处理数据时,需要返回Message并阻止程序的继续运行。但是,在存储过程使用Oracle数据库的Raise根本无法满足现在的要求。

解决方法:

使用RAISE_APPLICATION_ERROR

RAISE_APPLICATION_ERROR ( error_number_in IN NUMBER, error_msg_in IN VARCHAR2);

error_number: 自定义的错误编号。

error_msg:自定义的错误内容。

在使用的过程中,你可能会遇到了下面的问题。

ORA-21000: error number argument to raise_application_error of [xxxx] is out of range

出现此错误的原因如下:

在存储过程中定义的错误代码Number其实并不在Oracle数据库所允许的范围之内。因为Oracle数据库允许自定义的错误代码的范围是-20000 -- -20999

 

这样,就在Java端可以通过SQLException来捕获异常。

虽然通过SQLException.getMessage()可以捕获到异常的内容,但是这些内容对于开发比较有用。对于客户来说,并不友好,也没有多大意义。

通过SQLException.getErrorCode()可以捕获到自定义的异常错误编号。然后我们就可以通过这个错误编号,自定义相应的Message内容,返回给客户。

 

下面我们来介绍另一种解决方法:

通过存储过程返回值,你可以直接把错误Message定义在返回值中间。在Java端解析后,可以直接取得Message代码。

示例如下:

If condition then

 

p_result := 'ERR:MSG2061';

end if;

 

if substr(p_result, 1, 3) = 'ERR' then

ROLLBACK;

else

p_result = 'OK';

end if;

 

Java:略去中间的调用存储过程的步骤

if(result != null && result.startsWith("ERR:"))

// 从result中解析出Message_id,显示Message到前台

S32K144 LPI2C Master/Slave模式配置与多设备通信实战 本文详细介绍了NXP S32K144微控制器中LPI2C模块的主从模式配置与多设备通信实战。内容涵盖硬件连接、引脚配置、主从模式深度设置、中断/DMA应用,并通过AT24C16 EEPROM、SHT30传感器等实例,解析了多设备通信中的地址切换、时序控制及常见问题排查技巧,帮助开发者高效实现基于LPI2C的稳定通信。 阅读详情

相关推荐

深度学习---双层神经网络中矩阵的运算及其含义记录

深度学习---双层神经网络中矩阵的运算及其含义记录神经网络的正向传播与反向传播正向传播第一层的权重矩阵第一层的输入矩阵Z^1^ = W^1^X^1^ + b^1^A^1^ = σ(Z^1^)第二层的权重矩阵第二层的输入矩阵Z^2^ = W^2^A^1^ + b^2^反向传播dz^2^ = A^2^ - Ydw^2^ = 1/n dz^2^A^1T^db^2^ = 1/n np.sum(dz^2...

qq_43228441的博客 3743

ORACLE异常总结

1,异常:编译时异常和运行时异常     编译时异常相当于Java中的编译失败,语法错误之类,运行时异常相当于Java中的unchecked异常,oracle没有checked异常。 2,异常的分类:     预定义异常:oracle预定义的异常,如no_data_found等,oracle可自动触发,该类异常有21个。     非预定义异常:oracle可自动触发,但是该类异常只

zhangsai0123的专栏 2262

processing与arduino互动编程

Arduino开发板对AVR单片机二次编译封装,无需考虑单片机编程寄存器、地址指针等复杂细节processing借助arduino读取各种传感器的数值,控制各种机电装置。

weixin_45679408的博客 823

oracle raise_application_error,RAISE_ APPLICATION_ ERROR--之异常处理

平时用来测试的异常处理我们都是通过dbms_output.put_line来输出异常信息,但是在实际的应用中,需要把异常信息返回给调用的客户端。其实 RAISE_APPLICATION_ERROR 是将应用程序专有的错误从服务器端转达到客户端应用程序(其他机器上的SQLPLUS或者其他前台开发语言)raise_application_error(异常类型,传递信息)异常类型:number 值域:-...

weixin_26705191的博客 4821

新手必看:如何用T265和ROS实现无人机室内精准定位(附PX4参数配置)

本文详细介绍了如何使用Intel Realsense T265和ROS实现无人机室内精准定位,包括硬件准备、ROS数据流架构设计、PX4参数配置及系统验证。特别针对视觉SLAM技术在室内环境中的应用,提供了从零搭建到进阶优化的全流程解析,适合无人机开发新手快速上手。

weixin_30642561的博客 404

计算机视觉:AI生成内容(AIGC)对视觉领域的冲击

计算机视觉:AI生成内容(AIGC)对视觉领域的冲击​ 人工智能,计算机视觉,大模型,AI,在信息技术日新月异的当下,计算机视觉作为人工智能领域的关键分支,已经深度融入了我们生活与工作的各个层面。从安防监控系统里精准的人脸识别,助力维护公共安全;到工业生产线上高效的产品质量检测,保障产品品质;再到医疗影像分析中为疾病诊断提供有力支持,计算机视觉技术凭借其对视觉信息的强大处理与理解能力,不断推动着各行业的发展与变革。

不踩坑,不知道坑有多深;不总结,踩过的坑白踩。 17万+

oracle中自定义异常编号,Oracle自定义异常的使用

最近在进行项目开发时,根据业务逻辑在处理数据时,需要返回Message并阻止程序继续运行。但是,在存储过程使用Oracle的Raise根本无法满足要求。于是用到了RAISE_APPLICATION_ERRORRAISE_APPLICATION_ERROR ( error_number_in IN NUMBER, error_msg_in IN VARCHAR2);error_number: 自定义...

weixin_33171271的博客 864

【超详细】计算机组成原理总结及思维导图

计算机组成 第一章 计算机系统概论 冯诺依曼型计算机特点 1.计算机由运算器,控制器,存储器,输入和输出设备5部分组成 2.采用存储程序的方式,程序和数据放在同一个存储器中,并以二进制表示。 3.指令由操作码和地址码组成 4.指令在存储器中按执行顺序存放,由指令计数器(即程序计数器PC)指明要执行的指令所在的储存单元地址,一般按顺序递增,但可按运算结果或外界条件而改变 5.机器以运...

圣三一 10万+

RAISE_APPLICATION_ERROR

 RAISE_APPLICATION_ERROR 是将应用程序专有的错误从服务器端转达到客户端应用程序。      声明格式:           RAISE_APPLICATION_ERROR (error_num IN NUMBER,error_msg IN VARCHAR2);     该错误是一种自定义的事物错误类型,并非系统中已经命名存在的错误类型。其中,error_num和

owen_008的专栏 1483

全志平台camera驱动开发(3)MIPI接口camera驱动开发

详细沟通: 请加video_D 目前开发过的allwinner平台: V5/V3/V3S/V40/T3/T7/A64等 开发过的mipi sensor: sony:imx317、imx477、imx274、imx258、imx286、imx307、imx385等 ov:ov2718、ov12895、ov2710等 ar: ar0238等 国产:gc1024、gc1034...

jzwjzw19900922的博客 9028

【思博伦】史上最详细Spirent TestCenter测试仪使用教程精讲(一)!图解超赞超详细!!!

3. 在弹出的界面中,找到菜单栏中的“Connect/Create”,选择下拉框中的“Connect to Physical/Visual Chassis”,在弹出的对话框中输入思博伦测试仪的IP地址:192.168.6.244,点击“OK”;说明:目前我们只需要使用到Raw Stream Block,不需要用到Bound Stream Block。说明:如果要使用100G模式,由于硬件限制,必须连续3个面板端口同时配置为100G使用。打开安装包,并按照提示按照即可。

风云说通信 6477

oracle解析失败事件,ORACLE诊断事件及深入解析10053事件

【IT168 技术文章】Oracle 为RDBMS 提供了多种的诊断工具,诊断事件(Event)是其中一种常用、好用的方法,它使DBA 可以方便的转储数据库各种结构及跟踪特定事件的发生.一、Event 的通常格式及分类1、通常格式如下EVENT=""2、 Event 分类诊断事件大体上可以分为四类:a. 转储类事件:它们主要用于转储Oracle 的一些结构,例如转储一下控制文件、数据文件头等内容。...

weixin_39838829的博客 353

【深度学习新浪潮】Token经济学深度解析:从AI“新智元”梗到产业核心,研究成果+标杆产品全拆解

在正式深入研究和产品分析前,必须先破除概念误区:行业内常说的Token经济学,并非单一概念,而是分为AI词元Token经济学和Web3通证Token经济学两大核心分支,二者底层逻辑、应用场景天差地别,也是大众最容易混淆的点。Token是AI时代的新大宗商品:黄仁勋将Token类比为工业时代的电力、石油,是AI时代的核心生产资料与基础计价单位,不再是单纯的技术单元,而是具备标准化、可计量、可交易、可分层的数字商品,其价值由算力消耗、推理效率、实际应用价值共同决定,而非虚拟炒作。Token五层定价模型。

专注:太空算力、AI infra、异构调度、大模型成本工程 685

自定义异常 oracle,Oracle数据库自定义异常的使用方法

Oracle数据库自定义异常的使用方法来源:不详作者:佚名时间:2009-9-6 17:14:04 Tags: Orac 使用方法需求:业务逻辑在处理数据时,需要返回Message并阻止程序的继续运行。但是,在存储过程使用Oracle数据库的Raise根本无法满足现在的要求。解决方法:使用RAISE_APPLICATION_ERRORRAISE_APPLICATION_ERROR ( er...

weixin_39923599的博客 645

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

讲解Oracle数据库自定义异常的使用方法

【赛迪网-IT技术报道】需求:业务逻辑在处理数据时,需要返回Message并阻止程序的继续运行。但是,在存储过程使用Oracle数据库的Raise根本无法满足现在的要求。 解决方法: 使用RAISE_APPLICATION_ERROR RAISE_APPLICATION_ERROR ( error_number_in IN NUMBER, error_msg_in IN VARCHA

linghao00的专栏 2111

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

一文看懂基本的oracle预定义异常和自定义异常以及oracle异常函数

oracle预定义异常 语法格式如下: EXCEPTION WHEN exception1 [OR exception2 ...] THEN statement1; statement2; ... [WHEN exception3 [...

Leagues的博客 519

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

自定义oracle异常,详解Oracle自定义异常示例

1.弹出错误框:示例代码:declarev_count number;beginselect count(*) into v_count from dept;if v_count < 10 thenraise_application_error(-20001,'数量小于10');end if;end;执行结果:2.控制台显示:示例代码:declarev_count number;my_exp...

weixin_33756596的博客 419

oracle的异常处理

  oracle提供了预定义例外、非预定义例外和自定义例外三种类型。其中预定义例外用于处理常见的oracle错误;非预定义例外用于处理预定义所不能处理的oracle错误;自定义例外处理与oracle错误无关的其他情况。Oracle代码编写过程中,如果捕捉例外则会在plsql块内解决运行错误,否则将错误传递到调用环境。*常用预定义例外:为了处理各种常见的oracle错误,plsql为开发人员提供

47522341的专栏 4567

oracle 异常处理

oracle 异常处理 create unique index uname_idx on myuser(uname); select * from myuser for update; --捕获系统内置的异常 declare v_i number; v_ename varchar2(20); begin --v_i:=1/1; --除数0异常 --i...

weixin_30247159的博客 271

Oracle数据库的异常处理

一:说明   Oracle数据库底册定义了很多异常,每个异常都有一个唯一的编码,这些异常之中,有一些是常见的,Oracle给这些异常定义了名称,可以直接使用,其他没有名称直邮编码的不能直接使用。 二:分类   1)预定义异常       既有编码又有名称的异常是预定义异常,此类异常可以直接使用   2)非预定义异常       有编码但没有名称的异常是非预定义异常,此类异常不能直接使用...

weixin_30511039的博客 143

对自定义函数建立索引时抛异常ORA-30553

对自定义函数建立索引时抛异常ORA-30553 --ORA-30553: 函数不能确定(ORA-30553: The function is not deterministic)解决方法 function integer table sql  对自定义函数建立索引时抛异常 --ORA-30553: 函数不能确定(ORA-30553: The function is not deter

龙之刃_2013 810

ORACLE 异常错误处理

ORACLE 异常错误处理 作者:左正来源:博客园发布时间:2012-01-10 17:52阅读:35 次原文链接[收藏] 本篇主要内容如下: 5.1异常处理概念 5.1.1预定义的异常处理 5.1.2非预定义的异常处理 5.1.3用户自定义的异常处理 5.1.4用户定义的异常处理 5.2异常错误传播 5.2.1在执行部分引...

dinglangwei5539的博客 180

Oracle的异常处理

Oracle的异常处理oracle提供了预定义例外、非预定义例外和自定义例外三种类型。其中预定义例外用于处理常见的oracle错误;非预定义例外用于处理预定义所不能处理的oracle错误;自定义例外处理与oracle错误无关的其他情况。Oracle代码编写过程中,如果捕捉例外则会在plsql块内解决运行错误,否则将错误传递到调用环境。  常用预定义例外      为了处理各

合格程序员 1162

Oracle19C入门到熟练020-异常

程序在执行的过程中,出现未预料的错误情况。PL/SQL中的异常分3种:预定义的异常,非预定义的异常, 自定义异常。

langfeiyes的博客 520

oracle异常处理

(&变量名称:运行时输入的变量) 中文乱码解决: --查看系统环境变量 select * from nls_database_parameters; NLS_LANGUAGE.NLS_TERRITORY.NLS_CHARACTERSET 编辑配置文件: export LANG=zh_CN.utf8 export NLS_LANG=AMERICAN.AMERICA.WEBMSW...

weixin_30632089的博客 93

oracle的异常

– 异常处理(了解) – 也就是,当发现有异常出现,则捕获提示。 – 预定义的 Oracle 异常,有异常名,有错误代码,有异常信息。 – 非预定义的 Oracle 异常,有错误代码,有异常信息,但是没有异常名字。 – 在实际开发中,我们的异常处理,一般情况下都是需要使用 Java 代码方式来处理。 – 因为我们学习的 Java 语言是面向对象的 – Oracle 数据库其实是一个关系...

weixin_37543460的博客 244
上一篇: RAISE_APPLICATION_ERROR
下一篇: 全面解析Oracle developer的异常处理机制
ORHCLE
博客等级 码龄17年 30粉丝 1原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值