整个程序操作数据库,我想用一个CDatabase打开数据源,然后用CRecordSet操作该数据库的表(不同的表)怎样关联他们?难道只有用CRecordSet的构造函数吗???(这样太不方便了,两个类变量必须定义在一起)高手帮忙~~~!

解决方案 »

  1.   

    CDatabase db;
    db.Open();
    pset = new CRecordset(db);
    m_sql.Format("select * from yourtablename");
    pset->Open(CRecordset::snapshot,m_sql); //直接用CRecordset打开一个表
      

  2.   

    pset = new CRecordset(&db);
      

  3.   

    谢谢!
    还有一个:是不是CRecordset要操作一个表就必须打开这个表?(open)
    那就是说要频繁的open/close不同的表?有没有其他好的办法呢?
      

  4.   

    http://blog.csdn.net/he_zhidan/archive/2004/06/22/22772.aspx
    http://blog.csdn.net/he_zhidan/archive/2004/06/22/22767.aspx
    http://blog.csdn.net/he_zhidan/archive/2004/06/22/22770.aspx
      

  5.   

    是不是CRecordset要操作一个表就必须打开这个表?(open)
    那就是说要频繁的open/close不同的表?有没有其他好的办法呢?
    ------------------------------------------
    不打开,你怎么操作!其他方法?我还不知道有,^_^
      

  6.   

    接贴以前最后一个小问题:为什么我VC连接Sql server数据库,打开时总要弹出“SQL SERVER登录”
    框?怎样解决?
      

  7.   

    对,你可以直接在连接串里写密码和用户名啊!
    看下面例子里的UID PSW 就是啦
    pCn->Open("driver={SQL Server};Server=211.64.156.98;DATABASE=pubs;UID=sa;PWD=0829","","",adModeUnknown);