使用CDaoDatabase类打开数据库
使用CDaoRecordset类访问记录
都是标准SQL语言操作,很方便
不过需要Dao引擎支持,另外对Access2000支持不好

解决方案 »

  1.   

    1.在ODBC数据源中加入数据源
    也可用BOOL SQLConfigDataSource(
         HWND      hwndParent,
         WORD      fRequest,
         LPCSTR      lpszDriver,
         LPCSTR      lpszAttributes);
    程序配置数据源2.在workspace中加入一个数据库工程3.让控件对应类如CEdit,CStatic等4.CDatabase m_db;//成员变量
    5.从CRecordset派生一个类CYourRecordset会让你选择表
    CYourRecordset rs(&m_db);
    m_db.OpenEx(_T("DSN=yourdatabase;UID=;PWD="))
    6.a.//要是数据量不大
    rs.Open();
    rs.GetRecordCount()//这个函数MFC的是不对的最好自已写一个
    ///alloc内存
    while(!rs.isEOF())
    {
      //
      rs.MoveNext();
    }
    rs.close();
    //在内存中查找
    ...6.b.///设置控件内容
    //大数据量
    rs.open()
    //设置控件内容
    //rs.close();
    7.//修改
    //从控件中取出数据如
    CString 类型的name
    CString SQLStr;
    SQLStr.Format(_T("UPDAT %s SET %s ='%s'WHERE %s=%s"),
    nameoftable,//最好在头文中定义
    tablefield,//最好也定义在实文件中
    name,
    tablefile2,
    otherval//我随便写的一个值
    )
    m_db.ExecuteSQL(SQLStr);
    //定义在头中的好处:放便修改和便于与它人一同开发
    8.m_db.Close();不使用完不要关db,打开和关闭数据库都是一个很长过程共有约6个线程被打开关闭,
      

  2.   

    用ADO,效率仅比OLE DB低一点,但其代码/性能比最好,是一种比较新的技术,对各类数据库支持都很好,还可以访问远程数据库。