0
我有一些代码从MS Access数据库读取。该代码如下:微软访问数据库 - “记录太大”异常
CDatabase database;
CString sDriver = "MICROSOFT ACCESS DRIVER (*.mdb)";
CString sDsn;
CString sFile = "MyDB.mdb";
CString sField;
// Build ODBC connection string
sDsn.Format("ODBC;DRIVER={%s};DSN='';DBQ=%s", sDriver, sFile);
TRY
{
// Open the database
database.Open(NULL, false, false, sDsn);
// Allocate the recordset
CRecordset recset(&database);
// Execute the query
recset.Open(CRecordset::forwardOnly, "SELECT NAME FROM INFOTABLE", CRecordset::readOnly);
// Loop through each record
while(!recset.IsEOF())
{
// Copy each column into a variable
recset.GetFieldValue("NAME", sField);
// Add the obtained field to a drop-down box
m_dropDown.AddString(sField);
// goto next record
recset.MoveNext();
}
// Close the database
database.Close();
}
CATCH(CDBException, e)
{
// If a database exception occured, show error msg
AfxMessageBox("Database error: "+e->m_strError);
}
END_CATCH;
我的问题是,一个例外是有时抛出。消息框显示,
Database error: Record too large
我的数据库有> 30000条记录。
为什么会发生此异常?另外,为什么会发生有时?
谢谢!
我试过了很长一段时间。我从来没有看过那篇文章o_O无论如何,谢谢! – 2013-03-11 14:23:31
此外,使用备忘录类型不是我的选择,因为我没有(也不能)创建数据库。不管怎么说,还是要谢谢你!哦,为什么有时候会发生这种异常? – 2013-03-11 15:21:22