我正在尝试按 ID 删除文件中的表行,但是在处理大文件(大小为 35 MB 或更大).mdb
时会出现异常。.mdb
例外是“ System resources exceeded (3035)
”。
但是在处理小文件时没有问题。
连接是通过使用 CDaoDatabse 实现的,它表示与数据库的连接,您可以通过该连接对数据进行操作。程序是用 C++ 编写的。
一段代码如下所示:
CDaoDatabase* pDatabase
BeginTransaction(pDatabase);
try
{
sSQL.Format("Delete from %s where %s = %d",DaoTrianglesTable,DaoObjectIdField,nObjectId);
pDatabase->Execute(sSQL);
}
catch(CDaoException* e)
{
DisplayDaoException(e);
EndTransaction(pDatabase,false);
}
EndTransaction(pDatabase,true);
请注意,如果我删除函数BeginTransaction()
并EndTransaction()
运行程序,那么没问题。但是,我不确定这是正确的解决方案,是否有任何替代解决方案?可能有人遇到过这种情况吗?