子程序很像一段小型的程序,由可选的声明部分,
执行控制部分和可选的异常控制部分组成。
PROCEDURE award_bonus(emp_id NUMBER) IS
bonus REAL;
comm_missing EXCEPTION;
BEGIN -- executable part starts here
SELECT comm * 0.15
INTO bonus
FROM emp
WHERE empno = emp_id;
IF bonus IS NULL THEN
RAISE comm_missing;
ELSE
UPDATE payroll
SET pay = pay + bonus
WHERE empno = emp_id;
END IF;
EXCEPTION -- exception-handling part starts here
WHEN comm_missing THEN
...
EXCEPTION
--log
WHEN OTHERS THEN
v_ErrorCode := SQLCODE;
v_ErrorText := SUBSTR(SQLERRM, 1, 2000);
insert into t_l4_log
(sid,
TABLENAME,
START_TIME,
END_TIME,
LOG_INFO)
values
(t_l4_log_seq.nextval,
't_l4_pdt_specific',
start_date,
sysdate,
v_ErrorCode || '::' || v_ErrorText||org_code_error||atnam_error||ATWRT_error);
--log
END award_bonus;
分享到:
相关推荐
SQLserver存储过程异常处理
Oracle 存储过程异常处理.docx
本文实例讲述了MySQL存储过程的异常处理方法。分享给大家供大家参考。具体如下: mysql> mysql> delimiter $$ mysql> mysql> CREATE PROCEDURE myProc -> (p_first_name VARCHAR(30), -> p_last_name VARCHAR(30)...
GBase 8a MPP Cluster存储过程异常处理参考手册 GBase 8a MPP Cluster 支持保存存储过程的异常信息功能,同时也能获得 DML 操作的影响行数。 诊断信息主要分两类: 1) 报错信息,主要包括错误数、错误号、错误状态、...
有时候,不希望存储过程抛出错误中止执行,而是希望返回一个错误码。 Mysql 支持异常处理,通过定义 CONTINUE/EXIT 异常处理的 HANDLER 来捕获 SQLWARNING/NOT FOUND/SQLEXCEPTION (警告 / 无数据 / 其他异常)。...
ORACLE 用户自定义异常小例子 1.进入pl/sql测试窗口 2.执行语句 declare empname varchar2(255); customize_exp EXCEPTION; –自定义异常 begin FOR c IN (select d.* from scott.dept d) ...
Oracle_存储过程exception异常处理大全及实例经典最终.docx
存储过程异常处理示例 代码如下: — ——————————————————————————– — Routine DDL — Note: comments before and after the routine body will not be stored by the server — ——...
MySQL存储过程 ERROR Handler 异常处理
1-oracle培训整套教程(存储过程-函数-触发器,异常处理,游标.存储包)
DB2异常汇总-中文
这个文档对初学者来说是非常实用的,简单思路清晰,这里包括了 定义存储过程、调用带有输入输出参数的存储过程、存储过程异常处理、存储过程中事务处理的例子,很直观,
本包用于记录存储过程里面的日志,将日志信息写入日志表(mylog)。可以记录日志时间、过程名称、过程里面...如果在异常处理部分记录日志,还可以记录异常代码、异常原因、异常产生的行数。 本人使用开发环境为oracle10g
主要为大家详细介绍了mysql存储过程中的异常处理,感兴趣的小伙伴们可以参考一下