_RecordsetPtr m_pRs;
m_pRs关联着一个sql语句的查询结果,
我想直接修改这个查询的结果,怎么出错了呢?m_pRs->PutCollect(_variant_t("ID"),_variant_t("1"));
我上面的语句编译通过,但是一执行就出错了,
难道不能修改查询到的结果集吗?

解决方案 »

  1.   


    1、函数应该是put_Collect吧?
    2、你可以catch一下,看错误信息是什么
    3、你的数据类型是一致的吗?ID是什么类型的字段?
      

  2.   

    mfc168(子非鱼)
    ==========================
    不行啊,我更新结果集的代码如下:       _variant_t vFieldValue;
           CString sItem4 = "1";
           m_pRs->MoveFirst();
           while(VARIANT_FALSE==m_pRs->EndOfFile)
           {
    m_pRs->put_Collect(_variant_t("ID"),_variant_t(sItem4));
    m_pRs->Update();
    m_pRs->MoveNext();
           }一运行就提示:
    “Runtime error, Programme abnormal terminated”
      

  3.   

    我刚才做了一个试验
    照你所写的:m_pRs->PutCollect(_variant_t("ID"),_variant_t("1"));
    我这里成功你的错误是属于运行期错误,和ADO无关,和上面的代码无关,你可以跟一下你的程序,定位错误
      

  4.   

    upup 
    怎么对y用sql语句查询到的结果集再次进行sql查询?
      

  5.   

    函数应该是PutCollect为什么不一次性的建立好记录集呢?要进行二次查询!