我创建了存储过程,
CREATE OR REPLACE PROCEDURE HR.secure_dml
IS
BEGIN
IF TO_CHAR (SYSDATE, 'HH24:MI') NOT BETWEEN '08:00' AND '18:00'
OR TO_CHAR (SYSDATE, 'DY') IN ('SAT', 'SUN') THEN
RAISE_APPLICATION_ERROR (-20205,'后台报错了');
END IF;
END secure_dml;怎么在java中得到RAISE_APPLICATION_ERROR的异常信息呢?就是
-20205,'后台报错了' 这数据
CREATE OR REPLACE PROCEDURE HR.secure_dml
IS
BEGIN
IF TO_CHAR (SYSDATE, 'HH24:MI') NOT BETWEEN '08:00' AND '18:00'
OR TO_CHAR (SYSDATE, 'DY') IN ('SAT', 'SUN') THEN
RAISE_APPLICATION_ERROR (-20205,'后台报错了');
END IF;
END secure_dml;怎么在java中得到RAISE_APPLICATION_ERROR的异常信息呢?就是
-20205,'后台报错了' 这数据
in_series_id IN dat_ct_series.series_id%TYPE,
in_user_id IN dat_ct_administrator.user_id%TYPE,
out_flag OUT number
)
AS
var_log_id dat_ct_log.log_id%TYPE;
begin --修改漫画系列表
update dat_ct_series set
status = 'N'
where series_id = in_series_id; if SQL%NOTFOUND then
out_flag := -1; -- 不存在
else
--记录删除系列的日志
select to_number(to_char(sysdate,'yyyyMMddHH24MISS')||trim(to_char(seq_general_id.nextVal,'0000000000000000')))
into var_log_id from dual; insert into dat_ct_series_log(
log_id,
series_id,
operate_time,
operator,
operate_type,
status)
values (
var_log_id,
in_series_id,
SYSTIMESTAMP,
in_user_id,
'SETN',
'A');
end if;
out_flag := 0;
Exception when others then
out_flag :=-2; -- 其他错误
end proc_del_series;
/