编写自己的高效分页SqlHelper

本文介绍如何通过创建SqlHelper类,利用DataReader只读取当前分页所需数据,提高效率,对比了DataAdapter的Fill方法,并提供了分页查询的代码示例。在测试中,使用该方法在大数据量下实现了快速的翻页响应。
摘要由CSDN通过智能技术生成

  这里主要介绍一下使用DataReader读取数据,包括分页读取。DataReader只读向前,DataAdapter的Fill方法是一 次性把查询到的所有数据取出来填充到DataTable或DataSet,下面的方法是使用DataReader只把当前页所需要的数据取出来添加到 DataTable,效率要比使用DataAdapter的Fill方法高得多。

      一、创建一个类库项目,命名为DAO,并创建一个SqlHelper.cs类

  二、测试,创建一个网站项目,编译DAO项目,添加对DAO项目的引用

       创建测试表,插入一百万条数据:

 

      设计如下界面

      

   GridView保持默认设置,不要设置自动分页,下面是5个Button和一个TextBox

  后台代码:

  运行后界面:

  

   翻页响应很快,比直接使用DataAdapter的Fill方法填充DataTable,然后使用GridView自动翻页效率高的多。

       数据翻页功能的实现还有其它一些方法,比如TOP、row_number() over (SQL Server 2005/2008)、存储过程等,有兴趣可以测试一下。

        本例提供的方法仅供参考。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值