oracle怎么写异常 oracle异常信息输出

oracle中如何创建异常信息表如果想抛出你自己的异常,需要在RAISE关键字后面加上你要抛出的异常名称 。代码执行到RAISE语句时,控制权就会传递给与命名异常最为匹配的异常处理.
oracle 中的 exception when others then 捕获异常 在db2中怎么写db2中类似oracle的异常捕获写法:
举例如下:
CREATE PROCEDURE OUT_LANGUAGE (...,OUT returnCode INTEGER, OUT returnMsg CHAR(32))
-- returnCode 返回执行中的的错误代码
-- returnMsg 返回执行中的的错误描述
SPECIFIC SQL_OUT_LANGUAGE
LANGUAGE SQL
BEGIN
DECLARE SQLCODE INTEGER DEFAULT 0;
DECLARE SQLSTATE CHAR(5) DEFAULT ′00000′;
DECLARE errorLabel CHAR(32) DEFAULT ′′;
......
-- in case of no data found
DECLARE CONTINUE HANDLER FOR NOT FOUND
BEGIN
SET returnCode = SQLCODE;
-- 也可以设置为 SET returnCode = 0; 因为这个DECLARE是为了忽略NOT FOUND的执行结果
END;
-- in case of SQL error
DECLARE EXIT HANDLER FOR SQLEXCEPTION
BEGIN
SET returnCode = SQLCODE;
SET returnMsg = errorLabel;
END;
oracle 用户自定义异常--设:要抛出的异常叫做ex_no_data,要判断是否小于0的变量为:v_data,则:
DECLARE
--声明异常
ex_no_data EXCEPTION;-- Exception to indicate an error condition
v_data NUMBER;-- Variable to hold data
--v_ErrorCode NUMBER;-- Variable to hold the error message code
--v_ErrorText VARCHAR2(200);-- Variable to hold the error message text
BEGIN
--抛出异常
IF v_data0 THEN --(括号内填抛出异常的条件)
RAISE ex_no_data;
END IF;
--捕捉异常
EXCEPTION
WHEN ex_no_dataTHEN
dbms_output.put_line(v_data);
--捕捉其他异常,并获得 捕获异常的内容
WHEN OTHERS THEN
null;
--v_ErrorCode := SQLCODE;
--v_ErrorText := SUBSTR(SQLERRM, 1, 200);
-- 注意这里用SUBSTR 来截取错误消息
--dbms_output.put_line(v_ErrorCode || '::'||v_ErrorText);
END;
/
---另可参考我之前的一个帖子:
oracle存储过程异常怎么写begin
select into ......................;
exception
when errorException then
.................
when others then
..................
end;
【oracle怎么写异常 oracle异常信息输出】oracle怎么写异常的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于oracle异常信息输出、oracle怎么写异常的信息别忘了在本站进行查找喔 。

    推荐阅读