关于oracle数据库的回滚问题,急!
vc连oracle数据库(odbc),想用CDatabase类的executeSQL执行SQL语句,怎么回滚?比如下面代码:
db.open;
try
{
db.executeSQL(strSQL1);
db.executeSQL(strSQL2);
db.executeSQL(strSQL3);
db.executeSQL(strSQL4);
}
catch (......)
{
db.rollback();
}
db.transcommit;
db.close
这样如果其中一个SQL语句出错,好像不能回滚,为什么?该怎么办?请不吝赐教!
------解决方案--------------------看看有没有DB.STARTTRAN
开始一个事务
你可以跟踪下 看他报错的时候是否被捕获
可能是没有捕获吧