oracle怎么创建异常 oracle的异常

如何处理用户自定义异常 oracle当与一个异常错误相关oracle怎么创建异常的错误出现时oracle怎么创建异常,就会隐含触发该异常错误 。用户定义oracle怎么创建异常的异常错误是通过显式使用 RAISE 语句来触发 。当引发一个异常错误时oracle怎么创建异常 , 控制就转向到 EXCEPTION块异常错误部分oracle怎么创建异常,执行错误处理代码 。
对于这类异常情况的处理,步骤如下:
1、在PL/SQL 块的定义部分定义异常情况:
异常情况EXCEPTION;
2、RAISE 异常情况;
3、在PL/SQL 块的异常情况处理部分对异常情况做出相应的处理 。
例:更新指定员工工资,增加100;
DECLARE
v_empno employees.employee_id%TYPE :=empno;
no_resultEXCEPTION;
BEGIN
UPDATE employees SET salary = salary 100 WHERE employee_id = v_empno;
IF SQL%NOTFOUND THEN
RAISE no_result;
END IF;
EXCEPTION
WHEN no_result THEN
DBMS_OUTPUT.PUT_LINE('数据更新语句失败了!');
WHEN OTHERS THEN
DBMS_OUTPUT.PUT_LINE(SQLCODE||'---'||SQLERRM);
END;
1、弹出错误框:
示例代码:
declare
v_count number;
begin
select count(*) into v_count from dept;
if v_count10 then
raise_application_error(-20001,'数量小于10');
end if;
end;
执行结果:
2、控制台显示:
示例代码:
declare
v_count number;
my_exp exception;
begin
select count(*) into v_count from dept;
if v_count10 then
raise my_exp;
end if;
exception
when my_exp then
dbms_output.put_line('数量小于10');
when others then
dbms_output.put_line('其他异常');
end;
执行结果:
PS:ORACLE 用户自定义异常小例子:
CREATE OR REPLACE PROCEDURE test_Exception_byLeejin
(
ParameterA IN varchar,
ParameterB IN varchar,
ErrorCode OUT varchar --返回值,错误编码
)
AS
/*以下是一些变量的定义*/
V NUMBER;
V nvarchar();
V NUMBER;
APP_EXP EXCEPTION; --自定义异常
BEGIN
ErrorCode :='';
IF (ParameterA=ParameterB) THEN
ErrorCode := 'ParameterA = ParameterB';
RAISE APP_EXP; -- 抛出异常
END IF;
EXCEPTION
WHEN APP_EXP THEN --在处理异常
RAISE_APPLICATION_ERROR(-,ErrorCode);
WHEN OTHERS THEN
RAISE_APPLICATION_ERROR(-,'未知异常');
END;
oracle抛出自定义的异常用什么关键字如果用自定义异常则可以创建如下代码
Sql代码
declare
row_count int;
begin
select count(*) into row_count from tree_table where parent_id = '0001' ;
if (row_count0) then
RAISE_APPLICATION_ERROR(-20001, '该节点有子节点oracle怎么创建异常 , 不能被删除 。');
end if;
select count(*) into row_count from tree_table where id = '0001' and status1 ;
if (row_count0) then
RAISE_APPLICATION_ERROR(-20002, '该节点已被确认oracle怎么创建异常,不能被删除 。');
end if;
delete from tree_table where id = '0001';
end;
oracle 用户自定义异常--设:要抛出oracle怎么创建异常的异常叫做ex_no_data,要判断是否小于0oracle怎么创建异常的变量为: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);
--捕捉其oracle怎么创建异常他异常oracle怎么创建异常,并获得 捕获异常的内容
WHEN OTHERS THEN
null;
--v_ErrorCode := SQLCODE;
--v_ErrorText := SUBSTR(SQLERRM, 1, 200);
-- 注意这里用SUBSTR 来截取错误消息
--dbms_output.put_line(v_ErrorCode || '::'||v_ErrorText);
END;
/
---另可参考oracle怎么创建异常我之前的一个帖子:
【oracle怎么创建异常 oracle的异常】关于oracle怎么创建异常和oracle的异常的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站 。

    推荐阅读