我写的一个实际例子,供参考
HRESULT OpenConnection(_ConnectionPtr &p_pConn)
{
   HRESULT hr=S_OK;
   _bstr_t szConnStr;
   szConnStr=L"Provider=MSDASQL.1;Persist Security Info=False;Data Source=AutoSwitch_DBF";
   try
   {
      hr=p_pConn.CreateInstance("ADODB.Connection");
      if(hr!=S_OK) return hr;
      p_pConn->CursorLocation=adUseClient;//你的问题需要这句话
      hr=p_pConn->Open(szConnStr,L"",L"",adConnectUnspecified);
   }
   catch(_com_error &e)
   {
return e.Error() ;
   }
   catch(...)
   {
//返回无法意料的错误
return S_COMM_UNCONSIDER;
   }
return hr;
}