ASP分页方法总述

    网上流行的分页算法很多,但是整体来看就3种分页方式:

    一、传统分页程序

    设计原理:采用先把所有内容读入内存,然后计算出数据总数,根据每页数据大小通过,rs.pagesize进行分页。每一页都需要对数据进行重复的读入,再根据页号调整rs数据指针进行数据显示。
    设计优点:
    1、 最为简单和最为广泛接受的分页方式。
    2、 可以根据多重变量进行排序 例如:order by topinfo,infotype,info
    设计缺点:
    1、 每次返页都需要把大量数据读入内存,占用内存过大,资源利用率不高。
    2、 每次翻页的速度都如同第一次翻页速度一样缓慢。
    设计结论:
    因其设计原理简单,如是小型access数据库,表数据容量在几千条且不重点考虑网页的处理速度的话是可以考虑采用的。
    
    二、ID预读分页程序

    设计原理:打开第一页的时候先把所有的数据ID号存储在一个数组或者变量中,然后每次分页显示的时候,只需要采用 select * form id in()进行读取。
    设计优点:
    1、 第一次页面显示速度很慢,以后每页读取速度非常快。
    2、 除第一页外,上下页读取、显示速度一样快。
    3、 可以根据多重变量进行排序 例如:order by topinfo,infotype,info
    设计缺点:
    1、 因第一次需要读取所有数据id,所以处理速度比较慢。
    2、 读取得id信息需要保存在session()或者cookies中,如用户浏览器禁止cookies存取则分页程序不能正常运作。
    设计结论:
    程序相对复杂,原理明了,处理十万万条数据左右时可以考虑采用,百万级数据可能会造成页面显示超时现象。如一次对10万条数据进行存储和分页,但是访问者仅访问了前几页信息,则会造成服务器资源的极大浪费。
    
    三、ID排序式分页程序

    设计原理:按照ID的顺序进行页面显示,每次读取页面都采用id< or id>的方式,不需要预读所有数据信息。
    设计优点:
    1、 因每次仅需要读取指定数量数据,所以访问速度快。
    2、 不会造成资源的浪费,根据访问者浏览的页数进行数据调用。
    设计缺点:
    1、 因采用id排序,所以不能指定其他的排序方式。
    2、 下一页的显示速度远远高于上一页的显示速度,访问页数越多越明显。
    设计结论:
    因每次访问上一页时都需要重新计算id范围,因此向上访问速度慢,且不能根据其他变量进行排序。程序设计复杂,不利于初学者学习、调试。

上一篇: 同名的全局变量和局部变量
下一篇: 关于分页的一点思路
文章来自: 网络
引用通告: 查看所有引用 | 我要引用此文章
Tags:
最新日志:
评论: 1 | 引用: 0 | 查看次数: 4727
发表评论
登录后再发表评论!