导读:在做数据查询的时候,有的时候查询到的数据有很多。通常呢,我们一般都是去拖动右侧边的滚动条。但是,有了分页后,我们就可以不必是使用滚动条,而直接通过分页查看我们想要的数据。在分页的过程中,有分为真分页和假分页。现在,就对这分页进行总结。

一、为什么分页

1,分页的好处

这是分页,有了分页就可以通过选择页数来查看结果,不用一直拖动滚动条。

2,不分页的弊端

这是不分页的显示效果,如果我们需要查看后面的数据,就得一直拖动边上的滚动条,一直往下拉。这样其实是很不方便的。









二、实现假分页

分页就是将查询到的数据分页显示,通过控制每页显示的数量来将查询到的数据分别显示。分页存在着两种情况:假分页和真分页,在这篇博客中,将实现假分页,下篇博客介绍真分页。

2.1,假分页

2.1.1,假分页概述

所谓的假分页,它其实也实现了分页显示的效果,但是,为什么说它是假分页呢?则是因为假分页虽然实现了分页,但它每次显示数据都得从数据库里将信息整个查询一遍。如果数据量小,那这个没什么影响,但如果数据量大,比如说几百万条数据。那么点击完下一页,在它加载的这段时间,我想我完全有时间去吃午餐。
在这个时候,除了界面和谐美观,我还不如一次将所有的数据查出来,拖动右边的滚动条呢。

2.1.2,假分页实现

2.1.2.1,界面设置说明

实现假分页,需要将GridView的AllowPaging属性设置为true,在PageSize属性中,设置每页需要显示的数据量(我设置为5)。

2.1.2.2,代码实现

<span style="font-size:18px;"><span style="font-family:KaiTi_GB2312;font-size:24px;">using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
using System.Data.SqlClient; namespace WebApplication1
{
public partial class WebForm1 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
//页面第一次加载
if (!Page.IsPostBack )
{
//绑定数据
GridView1.DataSource = MyData();
GridView1.DataBind();
}
}
//更改页数
protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
GridView1.PageIndex = e.NewPageIndex;
DataTable dt = MyData();
//绑定数据
GridView1.DataSource = dt;
GridView1.DataBind(); }
/// <summary>
/// 查询数据
/// </summary>
/// <returns></returns>
private static DataTable MyData()
{
SqlConnection con = new SqlConnection("server=.;database=newssystem;uid=sa;password=123456");
con.Open();
string strCmd = "select * from comment";
SqlCommand cmd = new SqlCommand(strCmd,con );
SqlDataReader sdr = cmd.ExecuteReader();
DataTable dt=new DataTable ();
dt.Load(sdr );
con.Close();
return dt; }
}
}</span></span>

2.1.2.2,实现效果



三、总结

假分页虽然在界面上实现了分页显示,但它实际上并没有实现分页。它的每一次页数变化,都需要从数据库里将表单的所有数据查询一遍,这样就影响了效率。而真正要做到的分页,应该是,第一页就只查询第一页的内容,第二页就查询第二页的内容。这样,因为每一页的数据量少,每次从数据库中也只是查询每一页需要显示的数据,效率上大大的提高了。
测试方法:可以在窗体加载时设置断点,点击分页的时候设置断点,以此来看它的数据查询是一条怎样的流程。

下一篇博客,实现真分页!

ASP.NET(四):ASP.net实现假分页显示数据的更多相关文章

  1. ASP.NET(五):ASP.net实现真分页显示数据

    导读:在上篇文章中,介绍了用假分页实现数据的分页显示 ,而避免了去拖动滚动条.但,假分页在分页的同时,其实是拖垮了查询效率的.每一次分页都得重新查询一遍数据,那么有没有方法可以同时兼顾效率和分页呢,那 ...

  2. 转:JSP 分页显示数据 (Oracle)

    JSP 分页显示数据 (Oracle) 标签: Oracle分页JSP分页 2013-11-19 20:40 3598人阅读 评论(1) 收藏 举报  分类: Web(11)  版权声明:本文为博主原 ...

  3. JSP 分页显示数据 (Oracle)

    要实现分页,首先我们要做的就是如何来编写SQL语句,网上也有很多,大家可以搜一下.在这里,我们使用一种比较常用的方式来编写SQL语句.代码如下: ----分页显示 select * from (sel ...

  4. asp.net---jquery--ajax 实现滚动条滚动到底部分页显示

    前台:aspx页面 var bgtime = $(" #date1 ").val(); var overtime = $(" #date2 ").val(); ...

  5. FormView分页显示数据的例子

    %@ Page Language="C#" AutoEventWireup="true" CodeBehind="FormView控件.aspx.cs ...

  6. ligerui做分页显示数据

    现在前台技术用到的是ligerui,一直想写一个有关ligerui的显示,利用加班的今天偷点闲复制一下下,当自己的一些小资料吧,不会的时候,还可以来看看............稍微有点多,毕竟是从前后 ...

  7. ListView OnScrollListener详解(滑屏分页显示数据)

    package com.action; import java.util.ArrayList; import java.util.List; import android.app.Activity; ...

  8. jQuery+Ajax+PHP+Mysql实现分页显示数据

    css <style type="text/css"> #loading{ position: absolute; top: 200px; left:400px; } ...

  9. 用react分页显示数据

    去年年底,尝试着用react写个组件化的页面! demo地址 里面有一个list页面弄了一下数据的分页展示 展示一下主要三个组件:父组件listBox.列表组件List.按钮组件PageButton ...

随机推荐

  1. JS中函数与事件

    一.函数: 1.函数就是一个工具,通过一小段代码,完成某个功能: 2.函数的定义: function 函数名(){ ..... } 或者 : var 函数名 = function(){ ...... ...

  2. 2018百度之星初赛(A)2 度度熊学队列

    思路: 记录一下c++ stl中的双向链表list的各种用法. https://blog.csdn.net/fanyun_01/article/details/56881515 实现: #includ ...

  3. JavaScript 30 - 3 学习笔记

    今天学习的是JavaScript 30-3 ---css Variables 实现的效果如下图所示. 废话不多,我们直接来看代码. html: <h1>大家好,这个一个<span c ...

  4. 关于Retrofit + RxJava 的使用

    年前一个月到现在,一直都在忙一个项目.项目使用的三方框架还是蛮多的. 下面来总结一下自己使用Retrofit + RxJava的知识点吧. (以下讲述从一个请求的最初开始) 1.首先定义一个RxMan ...

  5. 分布式系统中的CAP原理和BASE理论

    CAP是一致性(Consistency).可用性(Availability).分区容忍性(Partition tolerance)的缩写.CAP原理指的是这三个要素最多只能同时实现两点,不可能三者兼顾 ...

  6. 贴一发STL源码

    int my_lower_bound(int size, long long key){    int first = 0, middle;    int half, len;    len = si ...

  7. js 两个数组进行去重处理,返回去重后的数组

    1.去重的方法为: array_diff(a, b) { for (var i = 0; i < b.length; i++) { for (var j = 0; j < a.length ...

  8. python 基础之运算符

    运算符 a=10 ,b=20 运算符 描述 实例 + 加 - 两个对象相加 a + b 输出结果 30 - 减 - 得到负数或是一个数减去另一个数 a - b 输出结果 -10 * 乘 - 两个数相乘 ...

  9. jquery插件serializeFormToObject

    $.fn.serializeObject = function() { var o = {}; var a = this.serializeArray(); $.each(a, function() ...

  10. Hopfield 网络(上)

    讲的什么 这部分主要对 Hopfield 网络作一大概的介绍.写了其模型结构.能量函数和网络的动作方式.主要参考了网上搜到的一些相关 PPT.   概述 早在 1982 年,Hopfield 发表的文 ...