用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"));
为什么老是告错:“非法描述器索引“,这是哪里问题啊
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"));
为什么老是告错:“非法描述器索引“,这是哪里问题啊
select count(*) as nRecord from gasyqfb
执行后之后,记录集只会有一个数值型字段域.
通过RecordSet->GetFieldValue(0)来得到这个数.
执行后之后,记录集只会有一个数值型字段域.
通过RecordSet->GetFieldValue(0)来得到这个数.
偶用的是MFC ODBC类,在CRecordset里好象不能这样做啊?能否把CRecordset具体过程写写,谢谢了!
不过也难怪,现在都什么年代了,还搞ODBC。
楼主,我已把解答发消息给你了,查收.用的就是ODBC的CDatabase类
最后说一句,不管用DAO,ADO,ODBC,最后还不都对应到相应数据库的驱动上去了,能用就行.