在你查询的表中没有数据,可能是SQL的毛病也可能是真的没有数据。只要加上一个出错处理就可以了。
on error resume next
rss.movefirst
if err=3021 then
response.write "无数据!"
end if
来自 http://zhidao.baidu.com/link?url=N1-VEpaLsZKbqvAYhVvdfEGh_iIgIBVqmKzyIkV_9lsVomBmEeLIjqduo6RKts-N3ZWYOvAoUwbnUsS75XoSpK
asp网页报错显示“BOF 或 EOF 中有一个是“真”,或者当前的记录已被删除,所需的操作要求一个当前的记录
代码如下: <!--#include file="Conn.asp"--> <% dim roomname dim userid userid=Request("userid") roomname=Request("roomname") Session("roomname") = roomname set Rs=server.CreateObject ("ADODB.recordset") sql="select * from UserOnline where userid='" & Session("name")& "'" Rs.open sql,conn,1,3 if rs.eof and rs.bof then Rs.Close Set Rs=nothing Conn.Close Set Conn=nothing Response.Redirect "Main.asp" else Rs.AddNew Rs("roomname")=roomname Rs("userid")= Session("name") Rs("nickname")= Session("nickname") Rs("logintime")= now() Rs.UpDate Rs.Close Set Rs=nothing Conn.Close Set Conn=nothing Response.Redirect "Main.asp" end if %>
2011-05-21 11:53 提问者采纳
if rs.eof and rs.bof then 这个 应该改成 if rs.eof or rs.bof then
还有就是 你的 数据库中的userid,和页面中的session("name") 和 request("userid")的关系有没有搞错。
这个错误 就是 说明 通过你的 sql 语句提取的数据库表中的数据为空,而在页面中使用了它导致的
- 提问者评价
-
谢谢,问题解决了,把if rs.eof and rs.bof then改成if not rs.eof就行了,就你回答了,采纳你
来自 http://zhidao.baidu.com/link?url=6PClXyz0sNinpEXCHKA9S0zTs9fHcwZSsY9JzUuzlvs7Bm5jYp2MwIeS4ZLdkR_T1Koix6S0mhckf0OgyllqSK
BOF 或 EOF 中有一个是“真”,或者当前的记录已被删除,所需的操作要求一个当前的记录
20错误类型: ADODB.Recordset (0x800A0BCD) BOF 或 EOF 中有一个是“真”,或者当前的记录已被删除,所需的操作要求一个当前的记录。 /admin/mcompany.asp, 第 101 行 代码如下: <% set rs=server.createobject("adodb.recordset") if not isempty(request("page")) then pagecount=cint(request("page")) else pagecount=1 end if sql="select * from company where uname & cname like '%"&key&"%' order by id desc" rs.open sql,conn,1,1 if rs.eof and rs.bof then response.write"<SCRIPT language=JavaScript>alert('对不起,没有符合搜索条件的记录!');" response.write"javascript:history.go(-1)</SCRIPT>" end if rs.pagesize=10 if pagecount>rs.pagecount or pagecount<=0 then pagecount=1 end if rs.AbsolutePage=pagecount %> 就是最后一行
补充:第 101 行是这句吗? if rs.eof and rs.bof then 这样就可以了,不需要bof if rs.eof then --------------------- 不是的。 是rs.AbsolutePage=pagecount %>
满意答案
if rs.eof then '这里判断一个就够了 response.write"<SCRIPT language=JavaScript>alert('对不起,没有符合搜索条件的记录!');" response.write"javascript:history.go(-1)</SCRIPT>" response.end()'加上这句,后面的语句就不会执行了,并且也不会出错 end if rs.pagesize=10 if pagecount>rs.pagecount or pagecount<=0 then pagecount=1 end if rs.AbsolutePage=pagecount %>
满意答案
if rs.eof and rs.bof then response.write"<SCRIPT language=JavaScript>alert('对不起,没有符合搜索条件的记录!');" response.write"javascript:history.go(-1)</SCRIPT>" 在这行后边加response.end end if
来自
http://wenwen.sogou.com/z/q107142746.htm