我用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 程序里就捕获不到这个异常了,为什么?
解决方案 »
- sqlplus一个奇怪的问题
- LoadRunner录制pl/sql写的Oracle存储过程出现异常
- 关于oracle数据库递归模糊查询
- 500分,求Orcale相对SQLServer的优势,越详细越好。
- 向表插入记录时如果插入记录的前三个字段和表中某个记录的前三个字段相同则更新否则插入,如何实现比较简洁.
- 我知道Oracle中自增字段要建立sequence,然后取sequence的值。那假设我有100张表的主键都是自增字段,那岂不是要建立100个sequence。
- oracle的登陆口令问题?
- sql语句一行写不下咋办啊?(急救)
- 存储过程!!
- oracle数据库新建用户新建不了
- 求救: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