为什么ADO中 MoveNext();MoveFirst()不起作用?
w_j76 2001-08-27 01:43:04 _ConnectionPtr m_piConnection;
_RecordsetPtr m_piRecordset;
_CommandPtr m_piCommand;
CREATEINSTANCE(m_piConnection, Connection);
CREATEINSTANCE(m_piCommand, Command);
CREATEINSTANCE(m_piRecordset, Recordset);
m_strDatabaseName=_T("ddd.mdb");
m_piConnection->ConnectionString = _bstr_t(_T("DRIVER={Microsoft Access Driver (*.mdb)};DBQ=")+m_strDatabaseName);
m_piConnection->Open( "", "", "", -1 );
m_piRecordset->putref_ActiveConnection(m_piConnection);
m_piRecordset->Open(_bstr_t(strSelected), vtMissing, adOpenStatic, adLockOptimistic, adCmdText);
long m_nFieldCount = m_piRecordset->Fields->GetCount();
long lFld;
CString cName;
COleVariant vNull, vValue, vValue1;
while(!m_piRecordset->EndOfFile)
{
for (lFld = 0; lFld < m_nFieldCount; lFld++){
vValue = RsITEM(m_piRecordset, lFld);
if(vValue.vt != 1)
{
int type = vValue.vt;
if( VariantChangeType(&vValue1, &vValue, 0, VT_BSTR) == S_OK){
cName = vValue1.bstrVal;
}
}
}
m_piRecordset->MoveNext();//这一句为什么有无都没关系;改
//为MoveFirst()也不起作用
}