实现ADO.NET记录集获取记录数量的方法是什么

本篇文章给大家分享的是有关实现ADO.NET记录集获取记录数量的方法是什么,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

成都创新互联公司服务项目包括昭化网站建设、昭化网站制作、昭化网页制作以及昭化网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,昭化网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到昭化省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!

VC使用ADO技术访问数据表,打开数据表后,获得了ADO记录集,如何获得记录数量?一个小问题,没想到还有点意思,实践完成,总结一下。

方法一、用静态、键集游标方式打开数据表

p_hr = m_pRecordset->Open(_variant_t(bstrQuery),vNull,adOpenStatic,adLockOptimistic,adCmdText);

然后用GetRecordCount()函数,即可获得记录数量。

m_pRecordset->GetRecordCount();
  • 谈谈ADO.NET数据库连接池创建和分配

  • 剖析ADO.NET使用DataAdapter类

  • 简单实用的ADO.NET实体框架详解

  • 浅析ADO.NET实体数据访问和更改

  • 老鸟归纳ADO.NET实体框架功能

另外用键集游标方式也可以获得,adOpenKeyset (键集游标),但是用adOpenDynamic (动态游标)方式,就只会返回-1。多个用户都使用同一张表,且对其进行修改的可能都很大,则***使用adOpenKeyset。如只是浏览, 使用adOpenStatic   可提高性能! 补充:adOpenStatic   静态游标   ,   其它用户的修改对当前用户是不可见的.  adOpenDynamic   动态游标   ,   所有的修改对当前用户是见的.  adOpenKeyset   是前两种的折衷   ,   改对当前用户是见的.   但性能是***的.

方法二、用SQL语句实现

“select   count(*)   from   表名;”,这样就不用关心游标的方式了。

例子如下:

rs->Open("select   COUNT(*)   from   tbUsersInfo",strCnn,    adOpenKeyset,adLockOptimistic,adCmdText);    long   RecordCount;    RecordCount=rs->Fields->GetItem((long)0)->GetValue();

还有一个例子:

m_pRecordset   =   m_pConnection->Execute("SELECT   COUNT(*)   FROM   表名",&RecordsAffected,adCmdText);    _variant_t   vIndex   =   (long)0;      _variant_t   vCount   =   m_pRecordset->GetCollect(vIndex);    CString   message;    message.Format("共有%d条记录",vCount.lVal);    AfxMessageBox(message);

补充:

先将ADO记录集的

CursorLocation   =   adUseClient;

然后就可以了,总之感觉很意思,一个小问题,却有几种不同的解决方法,而且对于不同的数据库,还有点不一样。

以上就是实现ADO.NET记录集获取记录数量的方法是什么,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注创新互联行业资讯频道。


本文标题:实现ADO.NET记录集获取记录数量的方法是什么
文章位置:http://myzitong.com/article/jchhhp.html