ASP中显示上一条下一条出错

<%Setrs1=Server.CreateObject("Adodb.RecordSet")rs1.Open"Select*fromsecuwherenid="&nid... <%
Set rs1=Server.CreateObject("Adodb.RecordSet")
rs1.Open "Select * from secu where nid="&nid-1&"",conn,1,1
IF rs1.bof Then
response.write" 【没有上一个了】"
end if
if not(rs1.bof and rs1.eof) then%>
上一条:<a href="secu_body.asp?nid=<%=Rs1("nid")%>" title="<%=Rs1("cnt")%>" ><%response.write(rs1("cnt"))%></a>
<%
end if
rs1.close
set rs1=nothing
%>
</td><td>
<%
Set rs2=Server.CreateObject("Adodb.RecordSet")
rs2.Open "Select * from secu where nid="&nid+1&"",conn,1,1
IF rs2.eof Then
response.write" 【没有下一个了】"
end if
if not(rs2.bof and rs2.eof) then%>
下一条:<a href="secu_body.asp?nid=<%=Rs2("nid")%>" title="<%=Rs2("cnt")%>" >
<%response.write(rs2("cnt"))%></a>
<%end if
rs2.close
set rs2=nothing%>

这段代码是可以正常运行的.但是有个问题 就是在 检索数据库ID的时候 比如 我现在有1-100条记录.但是中间我把 第50条删除了.他显示到第50条的时候就说 没有记录了.我想解决怎么样才可以让他进行全局检索呢就是对整个表
楼下的大哥,你的程序我放上去了,但是提示出错啊
Microsoft VBScript 运行时错误 错误 '800a01a8'

缺少对象: ''

/notice_body.asp,行 123

这句话是 foodrs.AbsolutePage =page
展开
 我来答
姒晤s6
2008-03-27 · TA获得超过1282个赞
知道大有可为答主
回答量:3006
采纳率:100%
帮助的人:2073万
展开全部
上一条 下一条 并不是你这样做的。你这样的思路也不对。 ID号是不能更改的。删除记录后,ID号也不存在了。。你直接用ID号减1或加1。当有删除记录时,就会rs.eof 记录不存在。

正确的上一条下一条是这样的:
select top 1 * from 表 where id>当前id order by id desc
select top 1 * from 表 where id<当前id order by id desc
wu_asp
2008-03-26 · TA获得超过107个赞
知道小有建树答主
回答量:320
采纳率:0%
帮助的人:400万
展开全部
这好比一个分页程序,每页只用显示一条记录,不要根据他数据库里的ID来实现上页下页程序,建议使用page来实现,就不会出现第几条记录被删除而查询不到的情况了
具体实现为:
Set rs1=Server.CreateObject("Adodb.RecordSet")
rs1.Open "Select * from secu order by nid",conn,1,1
page=request("page") '接收page值
if page="" then
page=1 '如果没有 就初始化
end if
if not rs1.eof then
rs1.pagesize=1
foodrs.AbsolutePage =page
record=rs1.recordcount
if page=1 then '如果是第一个记录
response.write" 【没有上一个了】"
else
%>
上一条:<a href="secu_body.asp?nid=<%=Rs1("nid")%>&page=<%=page-1%>" title="<%=Rs1("cnt")%>" ><%response.write(rs1("cnt"))%></a>
<%
end if

if page=record then '如果是最后个记录
response.write" 【没有下一个了】"
else
%>
下一条:<a href="secu_body.asp?nid=<%=Rs1("nid")%>&page=<%=page+1%>" title="<%=Rs1("cnt")%>" >
<%response.write(rs1("cnt"))%></a>
<%
end if
end if
rs1.close
set rs1=nothing
'……
%>
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式