当前位置: 首页 > 图文教程 > 网络编程 > ASP > 对数据库中的记录用上一条下一条显示(一)

ASP
迁移到 ASP .NET:需考虑的重要问题(2)
ASP中优化数据库处理
结合XML, ADO, 以及ASP
在ASP中优化数据库处理
提高ASP性能的最佳选择(一)
返回UPDATE SQL语句所影响的行数的方法
ASP如何使用MYSQL数据库
安全维护 IIS asp 站点的高级技巧
也谈ASP中的RESPONSE属性
ASP提速技巧
在ASP中如何访问Novell下的数据库
改善ASP性能和外观的技巧集锦(上)
改善ASP性能和外观的技巧集锦(中)
改善ASP性能和外观的技巧集锦(下)
利用ASP在浏览器上打印输出
用ASP文件实现CPU的使用率始终保持100%
ASP 0115 Error的解决方案
Varchar与char的区别
探讨一下rs(0)和rs(fieldname)的执行效率
连接WEB数据库的ADO性能提高技巧

ASP 中的 对数据库中的记录用上一条下一条显示(一)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 82 ::
收藏到网摘: n/a

  若要让RecordSet移动到上一条下一条的位置,让我们先学会以下RecordSet对象的属性和方法:

BOF属性:当前游标指到RecordSet的第一条记录。
EOF属性:当前游标指到RecordSet的最后一条记录。
Move方法:移动游标到RecordSet中的某一个记录。
AbsolutePosition属性:当前游标在RecordSet中的位置。
bookmark(书签)属性:对RecordSet的一条记录做一个记号。

详细介绍如下:

BOF与EOF属性

可以编写程式码来检查BOF与EOF属性,来得知当前游标RecordSet的位置:

BOF与EOF都为False:表示游标位于RecordSet当中。
BOF为True:当前游标指到RecordSet的第一条记录。
EOF为True:当前游标指到RecordSet的最后一条记录。
BOF与EOF都为True:在RecordSet里没有任何的资料记录。
Move方法

您可以用Move方法移动游标到RecordSet中的某一条记录:

MoveFirst方法:移至第一条记录。
MoveLast方法:移至最后一条记录。
MoveNext方法:移至下一条记录。
MovePrevious方法:移至上一条记录。
Move [n]方法:移动游标到第n条记录,n由0算起。
AbsolutePosition属性

若您需要确定当前游标在RecordSet中的位置,您可以用AbsolutePosition属性。

AbsolutePosition属性的数值为当前游标相对于第一条的位置,由1算起,即第一条的AbsolutePosition为1。

然而,不要误以为AbsolutePosition是资料记录的编号,如果当前RecordSet处于未定的状态,则

AsolutePosition的数值为�1。

另外,在存取RecordSet时,无法保证RecordSet每次都以同样的顺序出现。

若要启用AbsolutePosition,必须先设定为使用用户端cursor,asp码如下:

rs2.CursorLocation = 3


一、Move/AbsolutePosition的例子

让我们看一个於ASP程式码当中使用Move/AbsolutePosition做到上一条下一条记录功能的例子。

譬如ASP程式码rs14.asp如下:

<%

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

conn1.Open "DBQ="& Server.MapPath("ntopsamp.mdb") &";Driver={Microsoft Access Driver (*.mdb)};DriverId=25;FIL=MS Access;"

Set rs2 = Server.CreateObject("ADODB.Recordset")

SqlStr = "SELECT * From 着作"

'Enable AbsolutePosition

rs2.CursorLocation = 3 'adUseClient

rs2.Open SqlStr,conn1,1,1

if Request("sel") = "prev" then

Session("position") = Session("position") - 1

rs2.Move Session("position")

elseif Request("sel") = "next" then

Session("position") = Session("position") + 1

rs2.Move Session("position")

else

Session("position") = 0

end if

%>

<% = Session("position") %>

<TABLE COLSPAN=8 CELLPADDING=5 BORDER=0>

<TR>

<TD ALIGN=CENTER BGCOLOR="#008080"><FONT COLOR="#FFFFFF">书名</FONT></TD>

<TD ALIGN=CENTER BGCOLOR="#008080"><FONT COLOR="#FFFFFF">出版</FONT></TD>

<TD ALIGN=CENTER BGCOLOR="#008080"><FONT COLOR="#FFFFFF">图片</FONT></TD>

<TD ALIGN=CENTER BGCOLOR="#008080"><FONT COLOR="#FFFFFF">简介</FONT></TD>

<TD ALIGN=CENTER BGCOLOR="#008080"><FONT COLOR="#FFFFFF">AbsolutePosition</FONT></TD>

<TR>

<TD BGCOLOR="f7efde" ALIGN=CENTER><%= rs2("书名") %></TD>

<TD BGCOLOR="f7efde" ALIGN=CENTER><%= rs2("出版") %></TD>

<TD BGCOLOR="f7efde" ALIGN=CENTER><%= rs2("图片") %></TD>

<TD BGCOLOR="f7efde" ALIGN=CENTER><%= rs2("简介") %></TD>

<TD BGCOLOR="f7efde" ALIGN=CENTER><%= rs2.AbsolutePosition %></TD>

</TR>

</TABLE>

<% if Session("position") > 0 then %>

<A href=rs14.asp?sel=prev>上一条</A>

<% end if %>

<% if Session("position") <