求助,急,ASP程序报错,ADODB.Recordset 错误 '800a0bcd'

来源:百度知道 编辑:UC知道 时间:2024/05/30 13:56:10
ADODB.Recordset 错误 '800a0bcd'
BOF 或 EOF 中有一个是“真”,或者当前的记录已被删除,所需的操作要求一个当前的记录。

/gx2/sou1.asp,行 73

-----下面是代码-----就22分啦,拿出20分多的话就多给些了,谢谢各位--

<%set com=server.createobject("adodb.connection")
com.open "DBQ="& Server.MapPath("data.asp") &";Driver={Microsoft Access Driver (*.mdb)}"
if request("ok")="ok" then response.write "hello"
set rs=com.execute("select*from msg where edt>=#" & date & "# ORDER BY id DESC")
page=request("page")
newpage=0
if page="" then page=1
do while newpage<page*21-21
newpage=newpage+1
rs.movenext
loop
do while not rs.eof
i=i+1%>
先谢谢楼下的两位朋友,我一会儿再检查一下,

顺便补充一下,报错说的73行是这里,

73- rs.movenext
74- loop
75- do while not rs.eof
76 i=i+i%>

do while newpage<page*21-21
newpage=newpage+1
rs.movenext
loop

不知道这一段是干什么用的,不过你可以注释这几行再试
有一点是明确的,rs.movenext放在这里毫无用处

没有找出数据来,你自己找找哪有问题

select*from msg where edt>=#" & date & "# ORDER BY id DESC
仔细检查你这句代码有没有写错,或是数据库里面有没有适合这条件的记录!

有两处有可能错误
1.set rs=com.execute("select*from msg where edt>=#" & date & "# ORDER BY id DESC")
若没有
另一个错误
do while not rs.eof
newpage<page*21-21
newpage=newpage+1
rs.movenext
loop
do while i=i+1%>
改为
do while (not rs.eof and newpage<page*21-21 )
newpage=newpage+1
i=i+1
...
rs.movenext
loop
%>