当前位置:首页 » 存储配置 » oracle存储过程exception

oracle存储过程exception

发布时间: 2025-08-07 04:57:23

㈠ oracle怎么写存储过程

给你示例你参考下:
----------------------------建立存储过程:
CREATE OR REPLACE PROCEDURE P_name--存储过程名字
(
i_var in int, --输入参数1
o_var OUT varchar2 --输出参数1
)
IS
v_STR VARCHAR2(200); --定义存储过程内部的局部变量

BEGIN
--下面是存储过程的主体实现部分
v_STR := i_var;
dbms_output.put_line(v_STR);
o_var := v_STR;
exception--错误异常处理部分
when others then
dbms_output.put_line(sqlerrm);--打印错误信息
END P_name;

-----------------------------------调用存储过程示例:
declare
v_in int;
v_out varchar2(50);
begin
v_in :=100;
P_name (v_in,v_out); --调用存储过程P_name
dbms_output.put_line('存储过程输入结果为:'||v_out);
exception--错误异常处理部分
when others then
dbms_output.put_line(sqlerrm);--打印错误信息
end;

㈡ 请教关于oracle中写存储过程时 select into 语句报错的问题

定义一个块,块中说明异常情况下如何处理就可以了。
begin
select 字段 into 变量...
exception
when NO_DATA_FOUND then --未找到时
处理逻辑
when exception_code then --这里的错误代码可以在standard包中找到
处理逻辑
when OTHERS then --default错误时
处理逻辑
end;
错误代码可通过如下语句获得:
select * from dba_source where owner='SYS' and name='STANDARD' and type='PACKAGE' and text like ' pragma EXCEPTION%';

㈢ 请教各位高手 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 存储过程,请问这样的一个存储过程执行中其中一条语句报错,接下来的语句还会执行吗

不会,直接抛出异常,并终止。存储过程是预编译sql的,主题出错会导致整个存储过程执行失败。

㈤ 在使用oracle创建存储过程部分代码: EXCEPTION WHEN NO_DATA_FOUND THEN NULL; WHEN OTHERS THEN RAISE;

NULL 当没有数据时,抛出空值

RAISE 是用来抛出异常的,没带参数的如你上面的这种,就是将当前的异常传到外部程序。

热点内容
真我手机如何修改登录密码 发布:2025-09-17 05:20:26 浏览:313
电脑配置怎么说 发布:2025-09-17 04:37:45 浏览:1001
三质数编程 发布:2025-09-17 04:04:41 浏览:559
ftp服务器密码如何修改 发布:2025-09-17 03:48:07 浏览:302
python爬虫豆瓣 发布:2025-09-17 03:41:59 浏览:210
我的世界国际版加入服务器电脑版 发布:2025-09-17 03:41:14 浏览:939
附件上传相片 发布:2025-09-17 03:39:53 浏览:442
微信账号密码组合是什么 发布:2025-09-17 03:30:05 浏览:400
windows如何查看ftp安装环境 发布:2025-09-17 03:30:02 浏览:918
java培训机构推荐 发布:2025-09-17 03:20:58 浏览:93