当前位置: 代码迷 >> Oracle开发 >> 存储过程获取sqlcode和sqlerrm的有关问题
  详细解决方案

存储过程获取sqlcode和sqlerrm的有关问题

热度:66   发布时间:2016-04-24 06:58:21.0
存储过程获取sqlcode和sqlerrm的问题
存储过程里面捕获异常后,我想记录打日志表里面去:
insert into log_table(c1, c2) values(sqlcode, sqlerrm);

为什么存储过程报错,不能直接调用sqlcode,sqlerrm。

我单独创建两个类型
error_code number;
error_msg varchar2(200);

error_code := sqlcode;
error_msg := sqlerrm;

然后
insert into log_table(c1, c2) values(error_code, error_msg);
这样就可以。

但是这样就得创建两个对象。

我想直接在insert语句里面调用到sqlcode,sqlerrm,不创建两个对象,请问有什么好办法?

------解决方案--------------------
多创建2个变量而已,又不影响什么。。。

只能这么做
------解决方案--------------------
声明两个变量,有很大浪费?
------解决方案--------------------
sqlcode, sqlerrm是两个函数,跟sysdate类似
可能insert into需要静态值吧
  相关解决方案