我用ado直接调用access数据库,记录指针是这样定义的:
_RecordsetPtr pRecordSet=NULL;用下面的代码可以打开数据库
strSql.Format(_T("SELECT * FROM 表);
pRecordSet=TheApplication->m_pConnection->Execute((_bstr_t)        strSql,&RecordsAffected,-1);我想用pRecordSet指针将其指向的当前记录中的某一个字段值修改为另外一个,
我用PutCollect()函数,可每次执行到这个函数都出错,我是这样用的:pRecordSet->PutCollect( L"equal", _variant_t((long)6));///修改其值
其中equal是一个字段的名称,后面是给他赋的值
pRecordSet->Update();///保存到库中 错误在什么地方呢?各位高手帮忙看看!

解决方案 »

  1.   

    为什么我的pRecordset.CreateInstance("ADODB.Recordset");总不成功呢?
    会有什么原因存在呢?而我在另一个程序中是可以的,这个程序不成功让我迷惑和无助!!!
      

  2.   

    不要把数据类型混为一谈。
    _pConnection->Execute(_bstr_t(strSql.AllocSysString()),&RecordsAffected, -1);此外,需要确认recordset里面是否有记录存在
      

  3.   

    一楼的:
    pRecordset.CreateInstance("ADODB.Recordset");
    很可能是由于你没有初始化COM库,调用一下::CoInitialize(NULL);
      

  4.   

    多谢各位!
    问题我自己解决了!是Execute出了问题