网络编程 
首页 > 网络编程 > 浏览文章

如何分页显示数据库查询结果?

(编辑:jimmy 日期: 2025/2/25 浏览:3 次 )

<%
if Request.QueryString("PageNumber").count > 0 then

' 指定页号的参数PageNumber.如果指定页号,则以指定页号为依据.

PageNumber = Request.QueryString("PageNumber")(1)
else
PageNumber = 1

' 如没指定页号,缺省为1.
end if

RecordNumberPerPage = 10

' 每页显示10条记录.

 set ARecordSet = Server.CreateObject("ADODB.RecordSet")
ARecordSet.open "select * from contact1",AConnection,1
' 执行查询,注意Open语句中指定的第三个参数.

ARecordSet.PageSize = RecordNumberPerPage

' 指定每页记录条数.
ARecordSet.AbsolutePage = PageNumber

' 指定当前页号.

Response.Write "<br>每页有"&ARecordSet.PageSize&"条记录"
Response.Write "<br>共有"&ARecordSet.PageCount&"页"
Response.Write "<br>这是第"&PageNumber&"页"

Response.Write "<Table border=1>"
' 以表格形式显示查询结果.

Response.Write "<tr>"
For FieldNo = 0 to ARecordSet.Fields.count - 1
Response.Write "<td>"&ARecordSet( FieldNo ).Name&"</td>"
Next
Response.Write "</tr>"
' 显示字段名.

RecordCounter = 0
Do while not ARecordSet.eof
RecordCounter = RecordCounter + 1
' 显示查询.

if RecordCounter > RecordNumberPerPage then

' 如果要显示的记录数大于每页记录数目,则停止显示.
Exit do
end if

 Response.Write "<tr>"
For FieldNo = 0 to ARecordSet.Fields.count - 1
Response.Write "<td>"&ARecordSet( FieldNo )&"</td>"
Next
Response.Write "</tr>"

' 显示一条记录.

 ARecordSet.MoveNext
Loop
' 转向下一条记录.

Response.Write "</Table>"

if PageNumber > 1 then

' 如果不是第一页,则提示上一页.
Response.Write "<p><A href = chunfeng.asp?PageNumber="&(PageNumber-1)&">[上一页]</a>"

[1] [2]  下一页

上一篇:如何实现全文检索?
下一篇:如何编写翻页函数?
一句话新闻
一文看懂荣耀MagicBook Pro 16
荣耀猎人回归!七大亮点看懂不只是轻薄本,更是游戏本的MagicBook Pro 16.
人们对于笔记本电脑有一个固有印象:要么轻薄但性能一般,要么性能强劲但笨重臃肿。然而,今年荣耀新推出的MagicBook Pro 16刷新了人们的认知——发布会上,荣耀宣布猎人游戏本正式回归,称其继承了荣耀 HUNTER 基因,并自信地为其打出“轻薄本,更是游戏本”的口号。
众所周知,寻求轻薄本的用户普遍更看重便携性、外观造型、静谧性和打字办公等用机体验,而寻求游戏本的用户则普遍更看重硬件配置、性能释放等硬核指标。把两个看似难以相干的产品融合到一起,我们不禁对它产生了强烈的好奇:作为代表荣耀猎人游戏本的跨界新物种,它究竟做了哪些平衡以兼顾不同人群的各类需求呢?