hr = pRecordSet.CreateInstance(_uuidof(Recordset));
if(SUCCEEDED(hr))
{
pRecordSet->CursorLocation=adUseClient;
pRecordSet->PutRefActiveConnection(theApp.m_pConnection);
//hr = pRecordSet->Open(bstrQuery,vNull,adOpenForwardOnly,adLockOptimistic,adCmdText);
hr = pRecordSet->Open(bstrQuery,vNull,adOpenDynamic,adLockOptimistic,adCmdText);

if(!pRecordSet->GetadoEOF())
{
//long i = 0;
int n = pRecordSet->AbsolutePosition;
/*pRecordSet->MoveFirst();*/
pRecordSet->Move(m_SelRow);
n = pRecordSet->AbsolutePosition;

pRecordSet->PutCollect(n, value);
pRecordSet->Update(vNull, vNull);
pRecordSet->Close();
}
}
ado连接access数据库
PutCollect这句就一直过不去,报“在对应所需名称或序数的集合中,未找到项目”
各位大侠快帮帮忙!小女感激不尽啊~

解决方案 »

  1.   

    PutCollect不认变量类型是int的数据,改成long试试。
      

  2.   

    pRecordSet->PutCollect(n, value);
    这句好象不对吧,你查一下第一个参数是什么,另外,打开的语句有个参数:adLockOptimistic,这个参数是锁定什么的,你查下锁定什么,是不是不让修改.
    另外,修改好象是先用:
    pRecordSet->Edit();
    pRecordSet->PutCollect(n, value);
    pRecordSet->Update(vNull, vNull);
      

  3.   


    error C2039: 'Edit' : is not a member of '_Recordset'
    adLockPessimistic改成这个还是不对