实验Recordset.Movenext,Recordset.Previous,Recorset...等移动记录

以核为贵_

以核为贵_

2016-01-29 17:54

实验Recordset.Movenext,Recordset.Previous,Recorset...等移动记录,实验Recordset.Movenext,Recordset.Previous,Recorset...等移动记录
  我在实验Recordset.Movenext,Recordset.Previous,Recorset.......等移动记录的时候遇到了困难.
我用Access做后台数据库,通过一个查询条件查询得一个记录集,我想用一个表格实现记录的逐条浏览(不是一组记录分页浏览). 即"共查到**条记录,现在是第*条",单击"Next"按钮后下一条记录的内容显示在表格中.....

我用如下代码实现(见最后)

发现若将Rst.Open "select * from 某表 where 从某个Form获取的查询条件"
改成  Rst.Open "select * from 某表"(相当于不做查询动作)后, 记录的浏览功能才得以实现.
否则总是出现" EOF或BOF为真 "的错误提示.可我明明可以从"某表"中 "select... where..."到好几个记录的!

总之如何将"记录的逐条浏览"和"select * from 某表 where 从某个Form获取的查询条件" 结合起来?

望予以指点为感!

杨利
2000/4/13

程序代码:

<%@ LANGUAGE=VBScript %
<!-- #Include file="ADOVBS.INC" --
<html
<head
<title</title
</head
<body BGCOLOR="#FFFFF0"
<h3 align="center"<font face="隶书" color="#004080"<big现在您可以编辑以下记录</big</font</h3
<!-- 在服务器上创建 Connection 和 Recordset 对象 --
<%
'创建并打开 Connection 对象。
Set cn=Server.CreateObject("ADODB.Connection")
    cn.Open "DSN=数据库名"
'创建并打开 Recordset 对象。
Set Rst = Server.CreateObject("ADODB.Recordset")
    Rst.ActiveConnection = cn
    Rst.CursorType = adOpenKeyset
    Rst.LockType = adLockOptimistic   
Rst.Open "select * from 某表 where 性别='"&request.form("t1")&"'"(执行这句大有问题)
Rst.Open "select * from 某表 where 性别='男'"(执行这句有点问题)
Rst.Open "select * from hr_base"(执行这句没有问题)
' 检查 Request.Form 集合以查看所记录的任何移动。
If Not IsEmpty(Request.Form("MoveAmount")) Then
' 跟踪该会话的移动数目和方向。
   Session("Moves") = Session("Moves") + Request.Form("MoveAmount")
   Clicks = Session("Moves")
'移动到上一个已知位置。
   Rst.Move CInt(Clicks)
'检查移动为 + 还是 - 并进行错误检查。
      If CInt(Request.Form("MoveAmount")) = 1 Then
         If Rst.EOF Then
            Session("Moves") = Rst.RecordCount
            Rst.MoveLast
         End If   
         Rst.MoveNext
      End If
      If Request.Form("MoveAmount") < 1 Then
         Rst.MovePrevious
      End If
'检查有无单击 First Record 或 Last Record 命令按钮。
      If Request.Form("MoveLast") = 3 Then
         Rst.MoveLast
         Session("Moves") = Rst.RecordCount
      End If
      If Request.Form("MoveFirst") = 2 Then
         Rst.MoveFirst
         Session("Moves") = 1
      End If
End If
' 对 Move Button 单击组合进行错误检查。
      If Rst.EOF Then
         Session("Moves") = Rst.RecordCount
&nbs
展开更多 50%)
分享

猜你喜欢

实验Recordset.Movenext,Recordset.Previous,Recorset...等移动记录

ASP
实验Recordset.Movenext,Recordset.Previous,Recorset...等移动记录

在Recordset对象里面查询记录地办法

编程语言 网络编程
在Recordset对象里面查询记录地办法

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

随机访问Recordset的一条记录

ASP
随机访问Recordset的一条记录

3.5 随机访问Recordset的一条记录

Web开发
3.5 随机访问Recordset的一条记录

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

Recordset对象方法详解

ASP
Recordset对象方法详解

ADO如何善用RecordSet组件呢?

ASP
ADO如何善用RecordSet组件呢?

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

通过asp入侵web server,窃取文件毁坏系统

通过asp入侵web server,窃取文件毁坏系统

Windows XP最新应用技巧六招

Windows XP最新应用技巧六招
下拉加载更多内容 ↓