vc++读取Access内容总是出错
_RecordsetPtr m_pRecordset;
m_pRecordset.CreateInstance(__uuidof(Recordset));
try
{
m_pRecordset-> Open( "SELECT * FROM DemoTable ",
theApp.m_pConnection.GetInterfacePtr(),
adOpenDynamic,adLockOptimistic,adCmdText);
}
catch(_com_error *e)
{
AfxMessageBox(e-> ErrorMessage());
}
_variant_t var;
CString strName,strAge;
try
{
if(!m_pRecordset-> BOF)
m_pRecordset-> MoveFirst();
else
{
AfxMessageBox( "表内数据为空 ");
return;
}
// 读入库中各字段并加入列表框中
while(!m_pRecordset-> adoEOF)
{
var = m_pRecordset-> GetCollect( "Name ");
if(var.vt != VT_NULL)
strName = (LPCSTR)_bstr_t(var);
var = m_pRecordset-> GetCollect( "Age ");
if(var.vt != VT_NULL)
strAge = (LPCSTR)_bstr_t(var);
m_AccessList.AddString( strName + " --> "+strAge );
m_pRecordset-> MoveNext();
}
// 默认列表指向第一项,同时移动记录指针并显示
m_AccessList.SetCurSel(0);
}
catch(_com_error *e)
{
AfxMessageBox(e-> ErrorMessage());
}
哪里有错啊
[解决办法]
你先跟踪一下,看是什么情况下在那里出的问题
[解决办法]
这是 徐景周 的文章。
我运行过,没有问题。
你重新下载一个试试看。