CoInitialize(NULL); 
    m_pConnection.CreateInstance(_uuidof(Connection)); 
m_pRecordset.CreateInstance(_uuidof(Recordset)); 
_variant_t RecordsAffected; 
    try 

  m_pConnection->Open("Provider=VFPOLEDB.1;Data Source=C:\\Documents and Settings\\All Users\\桌面\\tpye\\jctype.dbf;Password='';Collating Sequence=MACHINE","",  "", adModeUnknown); 

catch(_com_error *e) 

          AfxMessageBox("确定jctype数据库是否在当前目录下!"); 

CString sql; 
try 

sql="SELECT * FROM jctype.dbf"; 
m_pRecordset->Open((_variant_t)sql, 
_variant_t((IDispatch*)m_pConnection,true), 
adOpenStatic,adLockOptimistic,adCmdText); } 
catch(_com_error&e) 

AfxMessageBox(e.ErrorMessage()); 

  m_pRecordset->AddNew(); m_pRecordset->PutCollect("Jcid",_variant_t(strjcid)); 
我是想在Jcid 数据项添加数据,前面运行都没问题 
但是在m_pRecordset->AddNew();溢出报错《请大虾知道,我是新手就这么点分,全给了!在先等啊 

解决方案 »

  1.   

    try
    {
    sql="SELECT * FROM jctype.dbf";
    m_pRecordset->Open((_variant_t)sql,
    _variant_t((IDispatch*)m_pConnection,true),
    adOpenStatic,adLockOptimistic,adCmdText);
      m_pRecordset->AddNew();m_pRecordset->PutCollect("Jcid",_variant_t(strjcid));
    }
    catch(_com_error&e)
    {
    AfxMessageBox(e.Description());
    }
      

  2.   

    改了 不过包错, unknow error 0x800a0cb3,好象说我m_pRecordset是只读状态,不能进行写操作,那怎么改了
      

  3.   

    权限由么?
    试试看
    m_pConnection->Open("Provider=VFPOLEDB.1;Data Source=C:\\Documents and Settings\\All Users\\桌面\\tpye;Password='';Collating Sequence=MACHINE","",  "", adModeUnknown);
    sql="SELECT * FROM jctype";