没有合适的资源?快使用搜索试试~ 我知道了~
ACCESS数据库大数据量分页的几种方法比较及测试结果分析
4星 · 超过85%的资源 需积分: 9 49 下载量 34 浏览量
2010-07-25
10:55:29
上传
评论
收藏 88KB DOC 举报
温馨提示
试读
3页
ACCESS数据库大数据量分页的几种方法比较及测试结果分析 ACCESS数据库大数据量分页的几种方法比较及测试结果分析
资源推荐
资源详情
资源评论
ACCESS 数据库大数据量分页的几种方法比较及测试结果分析
本文解决的问题:
1.ACCESS 是否存在更有效率的分页方法?
2.现有 ACCESS 大数据量 10 万条数据分页的效率测试
3.ACCESS 的数据承载量到底有多大?
相信很多 ASP 的站点还在使用 access 数据库,因为 access 数据库无须开专门的数据库空间,调用,
迁移也方便,节省费用。另外对网站搭建者的专业能力要求也相对低一些。但随着网站的运行,数据库体
积越来越大,数据量也从最初的几百条到了现在的上万条,上十万条甚至更多。于是因数据应用级别的改
变带来的各种各样的应用问题出现了。而其中大数据量的列表分页效率问题更是让很多人头疼。笔者随便
通过“大数据量分页效率”,“access 分页”等关键词分别百度和谷歌了一下,发现有此疑问的大有人在。很
多网页上也给出了不同的解决办法。那么,这些方法到底能达到优化效率,提高速度的目的吗?
先让我们来看看以下的几个 access 分页优化方案,当然如果你直接将数据库升级到 sql server,那
么有更好的诸如存储过程等方法。今天我们就讨论一下 access 大数据量优化分页方法,以及 access 到
底能承受多少数据量。
方案一:利用 ado 本身的结果集的 pagesize,AbsolutePage 的属性来进行分页
程序示例:(仅供示意,完善的各种条件判断自行添加)
MaxPerPage=20
page=cint(request("page"))
sql="select * from 表 where 条件 order by 排序条件"
set rst=server.CreateObject("adodb.recordset")
rst.open sql,conn,1,1
rst.pagesize=MaxPerPage
rst.AbsolutePage = Page '将记录定位到对应页数的第一条
for i=1 to MaxPerPage
循环列表
rst.movenext
if rst.eof then exit for
next
这个方法是最为常用的 access 分页方法。
缺点:每次都要读入符合条件的所有记录,然后再定位于对应页的记录。当数据量大的时候,效率就十分
的低下。
与此相似的方法是利用 ado 的 move 方法,每次将记录集游标移动 (page-1)*pagesize ,就实现了了
记录的分页。经过测试,效率与方案一大致相同。
方案二:
1.设置一个自增长字段.并且该字段为 INDEX.
2.由于是 ACCESS ,所以,只能是前台分页.自增长字段目的,就是为了实现分页功能.
1> 记录用户前页的最后一个 自增值 ,例如 M .
2> 下一页,取下一页的开始值.M+1 ,结束值: M+1+1.5*PAGESIZE (注:由于数据库会有增删操作,
资源评论
- scarecrow09292013-04-01总结的很不错,有参考价值。
阿步
- 粉丝: 2
- 资源: 53
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功