我的做法是:
假如表(table),有两个字段(int userid,varchar name),现在需要select里面的所有数据.
HRESULT hr;
_variant_t vFieldValue;
CString record,tmp;hr = m_rs->Open((_bstr_t)("select userid,name from table"),m_cn.GetInterfacePtr(),adOpenDynamic,adLockOptimistic,adCmdText);
if(SUCCEEDED(hr))
{
      record = "";
      while(!m_rs->EndOfFile)
{
vFieldValue=m_rs->GetCollect("userid");
tmp= (char*)_bstr_t(vFieldValue);
record+= tmp;
record+= "<"; //字段间的分隔符 vFieldValue=m_rs->GetCollect("name");
tmp= (char*)_bstr_t(vFieldValue);
record+= str;
record+= "|"; //记录间的分隔 m_rs->MoveNext();
}
}
我一直这样用,没出现错误,不知道大家还有什么好的方法没有?