c++连sql ODBC 怎样打开一个记录集,有表a1,列名name,cno,变量a2先要从表a1中取得cno=a2(a2是个变量)的name列的值。请把具体代码写出来!!谢谢!!!!!!!!!!!!!!!

解决方案 »

  1.   

    首先你要先创建一个继承CRecordset的类用来绑定你的数据库中的数据;然后 用该类的对象xxREC来操作数据库中的数据;看不同楼主的意思,要不没人回答,我想LZ是想把一个表中的一列数据name复制到另一列cno上,这好像和a2这个东西没啥关系,楼主结贴率 0.00%,也真够可以的,在这样下去,看你还怎么在CSDN待。。揣测你意思的代码:
    if(xxREC.isOpen())
     xxREC.Close();
    CString strSQL;
    strSQL.Format("SELECT * FROM a1");
    xxREC.Open(AFX_DB_USE_DEFAULT_TYPE,strSQL);
    if(!xxREC.IsEOF())
    {
    xxREC.MoveFirst();
    xxREC.MoveLast();
    }
    if(xxREC.GetRecordCount() > 0)

             xxREC.MoveFirst();
              While(!xxREC.isEof())
    {
                      xxREC.m_cno = xxREC.m_name;
                      xxREC.MoveNext();
                     }
             }
    xxREC.Close();
      

  2.   

    不好意思可能我表达的有问题 问题是这样的:现在有2个编辑控件edit1,edit2,对这两个控件增加变量a1,a2,然后要在edit1中输入数据,希望edit2中能自动显示出相应的数据,这表a中有这两个相关联的数据
      

  3.   

    给edit1 设置光标离开事件,然后在事件中添加数据库操作语句,你想表达的是,通过edit1为条件在数据库中查找符合条件的记录所对应的edit2的数据显示在界面eidt2上吧,刚才我写过了操作数据库的代码了,改一下SQL语句就可以了,
    UPdateData(TRUE);//取界面值("SELECT * FROM a1 WHERE eidtREC(数据库中对应的EDIT1列名) = '%s'",enit1);
    .
    .
    .
    .
    eidt2 = xxxREC.m_eidtREC;UpdateData(FALSE);