看到有人写pl/sql语句的是如下:
EXCEPTION
WHEN OTHERS --异常时把SQLCODE,SQLERRM output
THEN
DBMS_OUTPUT.put_line ( 'ERR:insert_exception_log: '
|| TO_CHAR (SQLCODE)
|| ' '
|| SQLERRM
);
[color=red][b] RAISE; [/b][/color] ROLLBACK;
关于RAISE;语句此处的用处的作用是?怎么使用?
在数据库的过程中EXCEPTION是专门用来处理异常的,sqlcode和sqlerrm是用来获取异常代码和错误提示信息的。数据库有它自带的系统内部异常,当然你也可以自定义异常,
raise是用来抛出异常的
raise application error是将应用程序专有的错误从服务器端转达到客户端应用程序
参考oracle异常处理,过程或语句中哪块有问题就会进入异常处理直接返回(rollback),就不往下执行了,有问题的那块语句下面的语句都没有执行