用CRecordset查询数据库,如果想查询满足条件的记录数目,
select count(*) from tabname可以用吗,该什么用啊?直接用REQUERY()好象不行,另外怎么把统计出来的记录数传递给某个变量?偶的代码如下:
CYqfbSet * m_pSet=new CYqfbSet;
    if(!db.IsOpen())
    {db.Open("mynewdsn");}
    m_pSet->m_pDatabase=&db;
    m_pSet->Open(AFX_DB_USE_DEFAULT_TYPE,_T("select count(*) as nRecord from gasyqfb"));
    为什么老是告错:“非法描述器索引“,这是哪里问题啊

解决方案 »

  1.   

    真是小气鬼啊.
    select count(*) as nRecord from gasyqfb
    执行后之后,记录集只会有一个数值型字段域.
    通过RecordSet->GetFieldValue(0)来得到这个数.
      

  2.   

    不是偶小气,而是偶分数用光了!SORRY,不知该怎么可以得到分数啊?select count(*) as nRecord from gasyqfb
    执行后之后,记录集只会有一个数值型字段域.
    通过RecordSet->GetFieldValue(0)来得到这个数.
     
    偶用的是MFC ODBC类,在CRecordset里好象不能这样做啊?能否把CRecordset具体过程写写,谢谢了!
      

  3.   

    操,这种问题还超级巨难。
    不过也难怪,现在都什么年代了,还搞ODBC。
      

  4.   

    不管黑猫白猫,能被老板逼得抓得到老鼠的,就是好猫.
    楼主,我已把解答发消息给你了,查收.用的就是ODBC的CDatabase类
    最后说一句,不管用DAO,ADO,ODBC,最后还不都对应到相应数据库的驱动上去了,能用就行.