oracle如何获取异常 oracle 异常处理

在存储过程怎么取得ORACLE异常

sqlcode表示错误代码

成都创新互联公司专注于企业全网营销推广、网站重做改版、富川网站定制设计、自适应品牌网站建设、H5页面制作商城网站制作、集团公司官网建设、外贸网站建设、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为富川等各大城市提供网站开发制作服务。

ora-01100

ora-09872

之类的

sqlerrm

表示错误信息

parallel

query

server

die

之类

insert

into

select

a

,b

,c

from

table;

commit;

-----------------------------

取得异常:

exception

when

others

then

vc_sqlcode

:=

sqlcode;

vc_sqlmsg

:=

substr(sqlerrm,2,100);

rollback;

end;

oracle怎么获取exception信息?

通过RAISE弹出框(调试时使用)

通过sqlcode,sqlerrm这两个内置变量来查看,

例如:DECLARE--声明异常some_kinds_of_errEXCEPTION;--Exceptiontoindicateanerrorconditionv_ErrorCodeNUMBER;--Variabletoholdtheer..

为了提高存储过程的健壮性,避免运行错误,当建立存储过程时应包含异常处理部分.

请教各位高手 oracle 存储过程 如何获得 捕获异常的内容

--通过sqlcode , sqlerrm 这两个内置变量来查看,例如:

DECLARE

--声明异常

some_kinds_of_err EXCEPTION; -- Exception to indicate an error condition

v_ErrorCode NUMBER; -- Variable to hold the error message code

v_ErrorText VARCHAR2(200); -- Variable to hold the error message text

BEGIN

--...

--抛出异常

IF ( ... ) THEN --(括号内填抛出异常的条件)

RAISE some_kinds_of_err;

END IF;

--...

EXCEPTION

--捕捉异常

WHEN some_kinds_of_err THEN

/* do something to Handler the errors */

null;

--捕捉其他异常,并获得 捕获异常的内容

WHEN OTHERS THEN

v_ErrorCode := SQLCODE;

v_ErrorText := SUBSTR(SQLERRM, 1, 200);

-- Note the use of SUBSTR here.

dbms_output.put_line(v_ErrorCode || '::'||v_ErrorText);

END;

/

/**

sqlcode 就是错误代码

sqlerrm 就是sql错误信息。注意用substr来截取,否则输出很难看。

**/

oracle 过程里怎么捕获方法里抛出的异常

EXCEPTION

WHEN excepttion_name1 then

........

WHEN excepttion_name2 then

........

WHEN excepttion_name3 then

........

End;

Oracle 如何捕获异常信息

一般写在存储过程处理异常。

exception

when others then

out_mes:=out_mes || '执行失败!因为'|| sqlcode || '错误' ;

out_mes你自己可以处理,插入日志表中 或作为输出参数。


本文名称:oracle如何获取异常 oracle 异常处理
网页网址:http://ybzwz.com/article/hjojoj.html