VC中要修改Access数据库中,某一行中某一列的数据
  比如:修改第2行第3列的数据,代码怎么实现?谢谢
 

解决方案 »

  1.   


    try
    {m_pRecordset->MoveFirst();
    m_pRecordset->Move(2);//第二行 
    m_pRecordset->PutCollect("Name", _variant_t(m_Name));//假设第三列字段名为Name,m_Name为要修改的值
    m_pRecordset->Update();
    }
    catch(_com_error *e)
    {
    AfxMessageBox(e->ErrorMessage());
    }
      

  2.   

    你使用哪种方式来连接数据库的呢?DAO还是ADO呢?
    下边是DAO方式的
    假设你要修改的列字段名字是field3,行id = 2,修改后的值为 CString szNewValue,
    CString szSql = "UPDATE ";
    szSql += " TableName SET field3 = \'" + szNewValue + "\' WHERE id = \'2\'"; try
    {
    .Execute(szSql, dbInconsistent); }
    catch(...)
    {
    OutputDebugString("Update Record Error!");
    }1楼的是ADO方式的。
      

  3.   

    关系数据库中,理论上是不区分顺序的。
    通俗的说:1、所有的记录行,不区分先后;2、所有的字段列,也没有前后。==============那如何区分行列呢?行的范围是由 WHERE 子句决定的,是一个集合,多条或单条;列,直接指明列名。==============所以,说修改2行3列,这种说法不科学。楼主应再认真看看数据库基础知识。