oracle的function怎么抛出异常
3个回答
推荐于2018-03-04
展开全部
方法一, 直接抛
SQL> DECLARE
2 -- 测试异常.
3 e_test_exception EXCEPTION;
4 BEGIN
5
6 -- 直接抛出异常,测试下面的捕获
7 RAISE e_test_exception;
8
9 EXCEPTION
10 WHEN e_test_exception THEN
11 dbms_output.put_line('Test Error !');
12 WHEN OTHERS THEN
13 dbms_output.put_line('OTHERS Error!');
14 END;
15 /
Test Error !
PL/SQL procedure successfully completed.
方法二, 定义个错误代码与消息后, 再抛。
SQL> BEGIN
2 -- 错误代码允许的范围是 -20,000~20,999
3 RAISE_APPLICATION_ERROR(-20000, 'My Error Happen!');
4
5 EXCEPTION
6 WHEN OTHERS THEN
7 dbms_output.put_line('Error Code = ' || TO_CHAR(SQLCODE) );
8 dbms_output.put_line('Error Message = ' || SQLERRM );
9 END;
10 /
Error Code = -20000
Error Message = ORA-20000: My Error Happen!
PL/SQL procedure successfully completed.
大雅新科技有限公司
2024-11-19 广告
2024-11-19 广告
这方面更多更全面的信息其实可以找下大雅新。深圳市大雅新科技有限公司从事KVM延长器,DVI延长器,USB延长器,键盘鼠标延长器,双绞线视频传输器,VGA视频双绞线传输器,VGA延长器,VGA视频延长器,DVI KVM 切换器等,优质供应商,...
点击进入详情页
本回答由大雅新科技有限公司提供
展开全部
--这个是判断一个字符串是否为日期型的,如果异常就返回值0
CREATE OR REPLACE FUNCTION is_date(parameter VARCHAR2) RETURN NUMBER IS
val DATE;
BEGIN
val := TO_DATE(NVL(parameter, 'a'), 'yyyy-mm-dd hh24:mi:ss');
RETURN 1;
EXCEPTION
WHEN OTHERS THEN
RETURN 0;
END;
CREATE OR REPLACE FUNCTION is_date(parameter VARCHAR2) RETURN NUMBER IS
val DATE;
BEGIN
val := TO_DATE(NVL(parameter, 'a'), 'yyyy-mm-dd hh24:mi:ss');
RETURN 1;
EXCEPTION
WHEN OTHERS THEN
RETURN 0;
END;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
raise 是抛出异常 你上下百度大师看下。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询