首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > oracle >

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

2013-07-21 
存储过程获取sqlcode和sqlerrm的问题存储过程里面捕获异常后,我想记录打日志表里面去:insert into log_tab

存储过程获取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需要静态值吧

热点排行