您的位置:首页技术开发ASP技巧 → rs的pagesize属性

rs的pagesize属性

时间:2004/11/7 4:11:00来源:本站整理作者:蓝点我要评论(0)

在了解了Recordset对象的以上属性和方法后,我们来考虑一下,如何运用它们来达到我们分页显示的目的。首先,我们可以为PageSize属性设置一个值,从而指定从记录组中取出的构成一个页的行数;然后通过RecordCount属性来确定记录的总数;再用记录总数除以PageSize就可得到所显示的页面总数;最后通过AbsolutePage属性就能完成对指定页的访问。好象很并不复杂呀,下面让我们来看看程序该如何实现呢?



子的自动编号;“s我们建立这样一个简单的BBS应用程序,它的数据库中分别有以下五个字段:“ID”,每个帖ubject”,每个帖子的主题;“name”,加帖用户的姓名;“email”,用户的电子邮件地址;“postdate”,加帖的时间。数据库的DSN为“bbs”。我们将显示帖子分页的所有步骤放在一个名为“ShowList()”的过程中,方便调用。程序如下:

'----BBS显示帖子分页----

<% sub="">

<%

PgSz=20 '设定开关,指定每一页所显示的帖子数目,默认为20帖一页

Set Conn = Server.CreateObject("ADODB.Connection")

Set RS = Server.CreateObject("ADODB.RecordSet")

sql = "SELECT * FROM message order by ID DESC"

'查询所有帖子,并按帖子的ID倒序排列

Conn.Open "bbs"

RS.open sql,Conn,1,1

If RS.RecordCount=0 then

     response.write "

对不起,数据库中没有相关信息!

"

  else

    RS.PageSize = Cint(PgSz) '设定PageSize属性的值

    Total=INT(RS.recordcount / PgSz * -1)*-1 '计算可显示页面的总数

    PageNo=Request("pageno")

    if PageNo="" Then

       PageNo = 1

        else

       PageNo=PageNo+1

       PageNo=PageNo-1

        end if

    ScrollAction = Request("ScrollAction")

    if ScrollAction = " 上一页 " Then

    PageNo=PageNo-1

    end if    

    if ScrollAction = " 下一页 " Then

    PageNo=PageNo+1

    end if

    if PageNo<1 Then

    PageNo = 1

    end if

    n=1

    RS.AbsolutePage = PageNo

    Response.Write "

"

    position=RS.PageSize*PageNo

    pagebegin=position-RS.PageSize+1

    if position<RS.RecordCount then

      pagend=position

    else  

      pagend= RS.RecordCount

        end if  

   Response.Write "

数 据 库 查 询 结 果:"

   Response.Write "(共有"&RS.RecordCount &"条符合条件的信息,显示"&pagebegin&"-"&pagend&")

"

   Response.Write ""

   Response.Write ""

   Do while not (RS is nothing)

    RowCount = RS.PageSize

    Do While Not RS.EOF and rowcount > 0

     If n=1 then

         Response.Write ""

     ELSE

         Response.Write ""

     End If

     n=1-n %>

     

     

    

    

    

    <%

    RowCount = RowCount - 1

    RS.MoveNext

    Loop

    set RS = RS.NextRecordSet

    Loop

      Conn.Close

      set rs = nothing

      set Conn = nothing

%>

主 题
用 户
Email
发 布 日 期








"><%>
<%>
<%>
<%>





">

<%

  if PageNo > 1 Then

    response.write ""

  end if

  if RowCount = 0 and PageNo <>Total then

    response.write ""

  end if

    response.write ""

End if

%>

<% end="" sub="">



相关阅读 Windows错误代码大全 Windows错误代码查询激活windows有什么用Mac QQ和Windows QQ聊天记录怎么合并 Mac QQ和Windows QQ聊天记录Windows 10自动更新怎么关闭 如何关闭Windows 10自动更新windows 10 rs4快速预览版17017下载错误问题Win10秋季创意者更新16291更新了什么 win10 16291更新内容windows10秋季创意者更新时间 windows10秋季创意者更新内容kb3150513补丁更新了什么 Windows 10补丁kb3150513是什么

文章评论
发表评论

热门文章 没有查询到任何记录。

最新文章 VB.NET 2005编写定时关 Jquery get/post下乱码解决方法 前台gbk gb如何使用数据绑定控件显示数据ASP脚本循环语句ASP怎么提速

人气排行 轻松解决"Server Application Error"和iis"一起学习DataGridView调整列宽用ASP随机生成文件名的函数Jquery get/post下乱码解决方法 前台gbk gbODBC Drivers错误80004005的解决办法返回UPDATE SQL语句所影响的行数的方法用Javascript隐藏超级链接的真实地址两个不同数据库表的分页显示解决方案