C++操作ACCESS数据库不知道哪里出问题了

AfxOleInit();
ConnectPtr.CreateInstance(__uuidof(Connection));
try
{
ConnectPtr->Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=People.mdb", "", "", adModeUnknown);
}
catch (_com_error e)
{
AfxMessageBox(_T("链接数据库失败"));
return FALSE;
}
RecordsetPtr RecordPtr;
RecordPtr.CreateInstance(
_uuidof(Recordset));
try
{
RecordPtr->Open("SELECT * FROM TYPE",
ConnectPtr.GetInterfacePtr(),
adOpenDynamic,
adLockOptimistic,
adCmdText);
}
catch (_com_error *e)
{
AfxMessageBox(e->ErrorMessage());
}
_variant_t var;
CString strName;
RecordPtr->MoveFirst();
while (!RecordPtr->adoEOF)
{
var =RecordPtr->GetCollect("TYPE");
if (var.vt != VT_NULL)
{
strName = (LPCSTR)_bstr_t(var);
}
Type.AddString(strName);//type是组合框变量
RecordPtr->MoveNext();
}
RecordPtr->Close();
RecordPtr.Release();
RecordPtr = NULL;

People.mdb没有带上路径,确保这个文件的确存在,并且在程序当前目录下。最好用绝对路径。
Microsoft.Jet.OLEDB.4.0驱动有没有?oledb4.0只能支持access 2000,97等比较老的数据库,access2007需要用ace12.0
SELECT * FROM TYPE,数据库有没有叫type的表
AfxMessageBox(e->ErrorMessage());报了什么错没有

People.mdb没有带上路径,确保这个文件的确存在,并且在程序当前目录下。最好用绝对路径。