终于有回复了
我没有更新日期型的,只更新number型的都不行

解决方案 »

  1.   

    这个问题我也碰到过,有点时间了,原来是使用ms sqlserver,转到ORACLE就不行了,不是ADO的问题,是ODBC的问题。
      

  2.   

    今天碰到一个问题,是MYSQL的,也是用ADO连接MYODBC。
    能读,数字型能写,字串不能写,不是一般的晕。解决问题的方法还是没有找到。
      

  3.   

    检查一下Update返回的错误码,跟踪进Update函数,直接检查Raw_Update返回HRESULT值是多少
    然后用这个错误码上网查查原因
      

  4.   

    m_pRecordset->Fields->GetItem("itemvalue")->Value = 3;估计是这一句错了,你检查一下你的itemvalue类型
    不要以为int一定能自动转换成long、tinyint、smallint我就遇到过这样的问题,将常量赋给smallint类型,导致Update错误
      

  5.   

    首先问下。你写入数据库的时候有错误吗?(即到最后的update的时候,有没有错误?)
    如果都正常的话,那就估计是如下的原因:
    由于Oracle是基于事务的数据库,你需要进行提交事务操作。
    如:
       try
        {
          m_pRecordset->Open(.....)
          m_pRecordset->PutCollect(ID);
          m_pRecordset->PutCollect(name);
          m_pRecordset->Update();
        }
        catch(..)
        {
          ...
        }    try
         {
           m_pConn->Execute(_bstr_t("commit"),NULL,adExecuteNoRecords);
          }
         catch(...)
         {
          .....
         }
    看看是不这样的原因!!
          
           
      

  6.   

    好的,我试试,用PostgreSQL做数据库就没这问题
      

  7.   

    nogodoss,我就是在UPDATE的时候出的错
      

  8.   

    在打开记录集的时候 加上这么一句试试
    m_pRecordset->CursorLocation=adUseClient;
      

  9.   

    m_pRecordset->Update(); //更新出错这里Update()只是ado成员函数,或许ORACLE更新需要执行某种sql语句。你先到ORACLE中,执行更新语句,掌握语法,再考虑如何在VC中庸。