我用vc连oracle(ODBC),代码如下:
CDatabase db;
db.OpenEx(...);
try
{
db.ExecuteSQL(_T("call proc_xxx('aa')"));
}
catch(CDBexception* e)
{...}
db.close其中proc_xxx是一个存储过程,操作是删除ID为“aa”的记录。但是实际数据库中
并没有ID为“aa”的记录,所以肯定是应该抱错的。用SQL PLUS 执行这个SQL语句就抱错,可是到了MFC 程序里就捕获不到这个异常了,为什么?
CDatabase db;
db.OpenEx(...);
try
{
db.ExecuteSQL(_T("call proc_xxx('aa')"));
}
catch(CDBexception* e)
{...}
db.close其中proc_xxx是一个存储过程,操作是删除ID为“aa”的记录。但是实际数据库中
并没有ID为“aa”的记录,所以肯定是应该抱错的。用SQL PLUS 执行这个SQL语句就抱错,可是到了MFC 程序里就捕获不到这个异常了,为什么?
解决方案 »
- !!在线急等高手!!多表连接,字段为空,结果集为空问题!
- oracle10g 审计问题
- 如何导出含有CLOB字段的表数据
- 今天领导找我谈话,有点希望,有点问题,请大家指点!
- Oracle数据库启动时报错:ORA-01078:处理系统参数失败。不知哪一位高人能解决一下,谢谢!
- Oracle中的时间类型格式问题
- 特别奇怪的问题,大家看看,关于Select的where条件的。(在线)
- txt导入问题?恳请指教.
- 关于行删除的问题!!!!!!!!!!!!!!!!!!!!!!!!!!!!
- PL/SQL 求助
- 求救:HPUNIX下的ORACLE7执行select * from tablename提示权限不足!!
- .net连接oracle的一个问题,求救
create or replace procedure pro_testpro
is
begin
...
delete table_name where ... ;
if sql%rowcount = 0 then
raise no_data_found;
end if;
...
end pro_testpro;删除行数为0时会触发ora-01403