欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

ASP Recordset 分页显示数据的方法(修正版)

程序员文章站 2022-05-18 11:14:21
1.建立recordset对象 复制代码 代码如下: dim objmyrst set objmyrst=server.createobject(“adodb.record...

1.建立recordset对象

复制代码 代码如下:

dim objmyrst
set objmyrst=server.createobject(“adodb.recordset”)
objmyrst.cursorlocation=aduseclientbatch ‘客户端可批量处理
objmyrst.cursortype=adopenstatic'光标类型为静态类型

注意:recordset对象不能用set objmyrst=connection.excute strsql的语句建立,因为其建立的recordset对象为adopenfowardonly不支持记录集分页
2.打开recordset对象
复制代码 代码如下:

dim strsql
strsql=”select * from ietable”
objmyrst.oepn strsql,activeconnection,,,adcmdtext

3.设置recordset的pagesize属性
复制代码 代码如下:

objmyrst.pagesize=20

默认的pagesize为10
4.设置recordset的absolutepage属性
以下为引用的内容:
复制代码 代码如下:

dim intcurrentpage
intcurrentpage=1
objmyrst.absolutepage=intcurrentpage

absolutepage为1到recordset对象的pagecount值
5.显示数据
复制代码 代码如下:

response.write("<table>")
printfieldname(objmyrst)
for i=1 to objmyrst.pagesize
printfieldvalue(objmyrst)
objmyrst.movenext
if objmyrst.eof then exit for
next
response.write("</table>")

说明:
1. adopenstatic,adusecilentbatch,adcmdtext为adovbs.inc定义的常量,要使用的话要把adovbs.inc拷到当前目录中并包含于在程序中
复制代码 代码如下:

<!--#include file=”adovbs.inc”-->

2. printfielname,printfieldvalue函数的代码如下:
复制代码 代码如下:

<%
function printfieldname(objmyrst)
'参数objmyrst是recordset对象
'定义娈数
dim objfld
response.write "<tr bgcolor='#cccccc'>"
for each objfld in objmyrst.fields
response.write "<td>" & objfld.name & "</td>"
next
response.write("</tr>")
end function
function printfieldvalue(objmyrst)
'参数objmyrst是recordset对象
'定义娈数
dim objfld
response.write("<tr >")
for each objfld in objmyrst.fields
'response.write "<td>" & objmyrst.fields(intloop).value & "</td>"
response.write "<td>" & objfld.value & "</td>"
next
response.write("<tr>")
end function
%>