介绍一个好的分页代码,以前都不知道,顺便调查下大家分页是什么代码?

csdn02 2005-05-09 01:58:54
pages=request("pages")
set rs=server.createobject("adodb.recordset")
if IsNumeric(pages) then
if pages<1 or pages=1 or pages="" then
sql="select top 5 * from images"
else
p=21*pages-21
sql="select top 5 * from images where id not in(select top "&p&" id from images)"
end if
else
sql="select top 5 * from images"
end if
rs.open sql,conn,1,1

如果每页只有5条,那每次就只取5条记录,速度快,代码也少。真是方便啊。
...全文
325 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
deiphi 2005-05-11
  • 打赏
  • 举报
回复
学习

lovebeyondforever 2005-05-11
  • 打赏
  • 举报
回复
建议帖个全的代码出来!
呵呵学习!
cheng17 2005-05-11
  • 打赏
  • 举报
回复
if page = 1 then
sql= "SELECT TOP "&pagesiz&" * FROM ask_answer ORDER BY ID"
else
sql= "SELECT TOP "&pagesiz&" * FROM ask_answer WHERE (ID > (SELECT MAX(id) FROM (SELECT TOP "&pagesiz * (page-1)&" id FROM ask_answer ORDER BY id) AS T)) ORDER BY ID "
End if

hansonboy 2005-05-11
  • 打赏
  • 举报
回复
windancer(^_^) ,请问你的分页控件可以共享出来吗?
windancer 2005-05-09
  • 打赏
  • 举报
回复
我已经忘了分页怎么写的了,自从写了分页控件以后 :P
ychych 2005-05-09
  • 打赏
  • 举报
回复
p=21*pages-21
sunshift 2005-05-09
  • 打赏
  • 举报
回复

我上个月也仔细研究了一下分页;

学习中···
phuson 2005-05-09
  • 打赏
  • 举报
回复
请教ygjwjj(塔克拉玛干---胡杨林) :

1.这是什么啊:&H0001?

2.你们这种分布方法,是不是页数越后面效率就越低啊?比如,每页20条,第100页时,条件就成为where id not in (select top 99*20 id from table) ,特别是最后一页时,子查询的结果好庞大,不知我分析得是否有道理,一起讨论。
phuson 2005-05-09
  • 打赏
  • 举报
回复
对啊,你们两个写的都一样嘛,不过楼主的这一句 p=21*pages-21 应该为 p=5*pages-5 吧
ygjwjj 2005-05-09
  • 打赏
  • 举报
回复
1、尽量不要用*;
2、Rs.Open SQL,Conn,1,1,&H0001
hansonboy 2005-05-09
  • 打赏
  • 举报
回复
我也经常 这样写的
csdn02 2005-05-09
  • 打赏
  • 举报
回复
我以前都是
rs.pagesize=10
rs.absolutepage=page
for i=1 to rs.pagesize
next

其实也方便。
csdn02 2005-05-09
  • 打赏
  • 举报
回复
楼上的,你的代码和我给的不差不多,你的哪里不一样了,就前面写了几个字段?
underone 2005-05-09
  • 打赏
  • 举报
回复
分页的大致思想都一样
ygjwjj 2005-05-09
  • 打赏
  • 举报
回复
sql="select top 5 * from images where id not in(select top "&p&" id from images)"
你这句如果IMAGES大的话会很慢的...
我常用的:不全,核心代码是这样的,你参考下.
if CurrPage=1 then
SQL = "SELECT Top "&RecperPage&" id,sender,content,sendtime FROM dv_message ORDER BY id DESC"
else
SQL = "SELECT Top "&RecperPage&" id,sender,content,sendtime FROM dv_message
WHERE id NOT IN (SELECT Top "&(CurrPage-1)*RecperPage&" id FROM dv_message ORDER BY id DESC) ORDER BY id DESC"
end if
Rs.Open SQL,Conn,1,1,&H0001
csdn02 2005-05-09
  • 打赏
  • 举报
回复
这个帖子发哪去了。怎么看不到了。

28,391

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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