CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
山寨机中的战斗机! 程序优化工程师到底对IT界有没有贡献
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VC/MFC >  基础类

CRecordset问题:符合查询条件的记录有多少,为什么我只能得到第一个记录?

楼主show_me_the_money(zzz...)2001-10-30 09:54:59 在 VC/MFC / 基础类 提问

我用CRecordset过滤查询,如查“SELECT   *   from   表1   where   列1   =   'aa'”  
  在表1中列1='aa'的记录有5条,可是我这样查询后得到的只有一条。  
  CRecordset   rs;  
  rs.Open(::dynaset,   "SELECT   *   from   表1   where   列1   =   'aa'");  
   
  然后我用  
  int   n   =   rs.GetRecordCount();     //n=1  
  rs里也只有第一条记录的数据 问题点数:60、回复次数:7Top

1 楼show_me_the_money(zzz...)回复于 2001-10-30 09:58:27 得分 0

我用的是:  
  rs.Open(CRecordset::dynaset,   "SELECT   *   from   表1   where   列1   =   'aa'");  
  上面打错了  
  另一种打开方式也试过:  
  rs.m_strFilter   =   "列1   =   'aa'";  
  rs.Open();  
  Top

2 楼jslj(英名神武、德配天地)回复于 2001-10-30 10:24:05 得分 10

CRecordset::dynaset?换其它的方式试试,比如快照。Top

3 楼zhr_kiss(天奇)回复于 2001-10-30 10:36:05 得分 0

我不知道。Top

4 楼show_me_the_money(zzz...)回复于 2001-10-30 10:37:18 得分 0

用快照倒是得到了正确的记录数5  
  即rs.GetRecordCount()的结果正确,可是仍只有第一条记录的数据,用movenext却能移5次(最后一次移动记录的数据没变。真是奇怪)Top

5 楼hqskoala(考拉·桉树叶蒸熟了才好吃)回复于 2001-10-30 12:18:16 得分 30

msdn上说GetRecordCount()的维护方式是“high   water   mark”。就是说它得到的结果是你曾经访问过的最大记录数。首先要call   MoveNext   repeatedly   until   IsEOF   returns   nonzero!Top

6 楼show_me_the_money(zzz...)回复于 2001-10-30 13:31:27 得分 0

这点我也发现了。Top

7 楼jazzrabbit(爵士兔)回复于 2001-10-30 14:47:05 得分 20

 
  快速的是直接用sql来取其记录数.  
   
  CString   sql;  
  sql.Format("select   count(*)   from   %s",myrecordset.GetDefaultSQL());  
  if   (myrecordset.Open(CRecordset::forwardOnly,sql)){  
          CDBVariant   dbv;  
          myrecordset.GetFieldValue((short)0,dbv);  
          //检查dbv类型  
          dbv.lVal--->是要的记录数.  
    ....      
  Top

相关问题

  • 在CRecordset里查询记录的问题
  • 如何返回符合查询结果的记录数?
  • 怎样将记录位置定位到,查询到的符合条件的第一条记录?
  • ADO 记录查询
  • 利用adoquery怎么判断是否查询到符合条件的记录?
  • 查询数据库时,怎样取得符合条件的记录的数量???
  • 如何让CRecordset类分批从数据库取符合条件的记录?
  • 我想查询出符合查询条件的记录中的第11-20条记录,where子句应当如何增加限制条件?(用于分页显示)
  • 如何查询记录呢
  • 如何查询MX记录

关键词

  • 数据
  • sql
  • 记录
  • crecordset
  • dbv
  • dynaset
  • myrecordset
  • getrecordcount
  • 得到
  • rs

得分解答快速导航

  • 帖主:show_me_the_money
  • jslj
  • hqskoala
  • jazzrabbit

相关链接

  • Visual C++类图书
  • Visual C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo