搞不懂,ADO的RecordCount问题!!

fireant25 2003-08-19 10:34:21
我在VC中用ADO连接paradox数据库,我想得到
表中有多少条记录。但下列方法返回的不是0就是-1,
而表中的确有数十条记录存在,困惑中……
myRecordset是_RecordsetPtr类型
myRecordset->get_MaxRecords
myRecordset->get_RecordCount
myRecordset->GetMaxRecords
myRecordset->GetRecordCount
myRecordset->RecordCount
以上都不行,无奈之下只好采用如下笨办法获得记录个数
while(!myRecordset->adoEOF)
{
Recordcount++;
myRecordset->MoveNext();
}
请教这是怎么回事?
好像我在Access数据库中使用也是这样。
...全文
95 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
zyleon 2003-08-19
  • 打赏
  • 举报
回复
while(!myRecordset->adoEOF)
{
myRecordset->MoveNext();
}

myRecordset->GetRecordCount();
zyleon 2003-08-19
  • 打赏
  • 举报
回复
这样的问题以前问过很多次了,你要先遍例一遍数据库才行
fireant25 2003-08-19
  • 打赏
  • 举报
回复
多谢大家!问题解决了,看来就是cursorlocation的问题!
fireant25 2003-08-19
  • 打赏
  • 举报
回复
zyleon(zy)
我在GetRecordCount之前已经遍历过了。
依然是0或者-1
while(!myRecordset->adoEOF)
{
Recordcount++;
myRecordset->MoveNext();
}
long i=myRecordset->GetRecordCount();
i的值是-1。
FredJiang 2003-08-19
  • 打赏
  • 举报
回复
我也遇到过同样的问题,不过是用VB+ADO+ACCESS DB 折腾了半天才明白:是游标的类型设置造成的。不知道对你是否有帮助
whitening 2003-08-19
  • 打赏
  • 举报
回复
将数据库连接属性设置一下就行了,如你的连接指针变量是m_conn,可以这样:
m_conn->cursorlocation=aduseclient;

4,012

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 数据库
社区管理员
  • 数据库
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧