分页的最佳实现方法

alicc 2006-10-19 06:04:20
希望各位能讨论讨论这个问题

从数据库中提取数据,动态分页的最佳分法是怎么实现
(无数据缓存,无静态技术,只是讨论动态分页)

哦现在都是这样实现的。

先找到sql语句的结果记录数,然后再提取第n页到n+1页的记录集,然后在界面上显示。


不知各位高手有什么好方法
...全文
298 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
wozuiniub 2006-10-21
  • 打赏
  • 举报
回复
如果是asp.net2005版的话,用gridview更直接,不用写代码
b_li 2006-10-21
  • 打赏
  • 举报
回复
jf
levin9 2006-10-20
  • 打赏
  • 举报
回复
dick78(vs2003+c#)
第一种方法虽然速度快,但是有bug
第二种通用.
wuqing5220 2006-10-20
  • 打赏
  • 举报
回复
OR 没 TOP 怎么办?
zxw17594840 2006-10-20
  • 打赏
  • 举报
回复
存储过程分页!
hertcloud 2006-10-20
  • 打赏
  • 举报
回复
http://www.cnblogs.com/hertcloud/
ye_zi 2006-10-20
  • 打赏
  • 举报
回复
去看老帖吧,一大堆
alicc 2006-10-20
  • 打赏
  • 举报
回复
up
alicc 2006-10-19
  • 打赏
  • 举报
回复
顶一下
alicc 2006-10-19
  • 打赏
  • 举报
回复
我是这样的sql

select * from (select top everypageNum * from (select * from user orderby ID asc) orderby ID desc) orderby ID asc
dick78 2006-10-19
  • 打赏
  • 举报
回复
楼主是如何提取n页到n+1页的记录集那?不同的方法效率是不同的,尤其是对于大批量数据的查询,差别回比较大的。
我的方法:根据要查询的页码(必须的有主健),找到其前一页(如果是第一页,则不必做这步)的主健的最大值@Key 然后select top PageSize* from tb where key>@Key ,是通过编的类来实现的,如果用存储过程效率可能高一些。
也用过:select top PageSize* from tb where key not in (select top PageSize*(PageIndex-1) key from tb) 其中PageIndex为要查询的页码。
二者比较:第一种方法效率高。
wanglei0420 2006-10-19
  • 打赏
  • 举报
回复
反正我的分页是用SQL语句通过TOP来控制每次取多少条的,感觉还可以

62,073

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧