一个asp网页的问题,如何解决;BOF 或 EOF 中有一个是“真”,或者当前的记录已被删除,所需的操作。。。

---------------------------提示---------------------------<fontface="Arial"size=2><p>AD... ---------------------------
提示
---------------------------
<font face="Arial" size=2><p>ADODB.Recordset '800a0bcd'<p>BOF 或 EOF 中有一个是“真”,或者当前的记录已被删除,所需的操作要求一个当前的记录。<p>\修改商品.asp, line

源码:

<!--#include file="conn.asp"-->
<!--#include file="fangsql.asp"-->
<%
dim shangpinmingcheng,shangpinxinxi,shangpinjiage

shangpinmingcheng=request("商品名称")
shangpinxinxi=request("商品信息")
shangpinjiage=request("商品价格")

if len(shangpinmingcheng)=0 or len(shangpinxinxi)=0 or len(shangpinjiage)=0 then
response.Write("要修改的商品里不能为空.")
response.end
end if
=======================================================================
rs.open "select * from 商品信息数据 where 商品名称='" & shangpinmingcheng &"'" ,con,1,3

rs("商品名称")=shangpinmingcheng
rs("商品信息")=shangpinxinxi
rs("商品价格")=shangpinjiage
rs.Update
rs.Close
response.Write("修改商品成功.")
response.end
%>
展开
 我来答
miniappkFwV0962YhOPw
2013-09-26 · 请开发者输入账号签名
miniappkFwV0962YhOPw
采纳数:2709 获赞数:7887

向TA提问 私信TA
展开全部
rs.open "select * from 商品信息数据 where 商品名称='" & shangpinmingcheng &"'" ,con,1,3
这句话会打开数据库,并且可读写。

但你要确认条件参数正确,where 商品名称='"&shangpinmengcheng&"'",有可能数据库查不到数据中有这个参数。所以打开的数据库就是为空。

那么,后面,你再rs("商品名称").....就可能会出错。

改为这样:
rs.open "select * from 商品信息数据 where 商品名称='" & shangpinmingcheng &"'" ,con,1,3
if not(rs.eof and rs.bof) then
rs("商品名称")=shangpngmingcheng
.....
rs.update
response.write("修改商品成功")
else
response.write("数据不存在")
end if
这样再看看吧
更多追问追答
追问
这样就老提示数据不存在了
追答
那是因为你前面shangpinmingcheng=request("商品名称")不正确

你改为shangpinmingcheng=trim(request("商品名称"))再试试,可能在获取信息时,有空格,这样就可以去掉空格。

仔细检查一下你的参数

比如你可以这样检查
response.Write("select * from 商品信息数据 where 商品名称='" & shangpinmingcheng &"'")
这样,就可以显示出,你这条SQL语句是否有问题了
我想你得到的显示,应该是select * from 商品信息数据 where 商品名称=''
stv_
2013-09-26 · TA获得超过117个赞
知道小有建树答主
回答量:151
采纳率:77%
帮助的人:55.1万
展开全部
在更新之前先判断记录集是否为空
if rs.BOF then
response.end

end if

rs("商品名称")=shangpinmingcheng
rs("商品信息")=shangpinxinxi
rs("商品价格")=shangpinjiage
rs.Update
rs.Close
response.Write("修改商品成功.")
response.end

如果还出错,说明你查询出来的不只是一条记录
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
转狂船医0Mff0
2013-09-26
知道答主
回答量:56
采纳率:100%
帮助的人:9.5万
展开全部
地方的 啊所发生的阿斯达俺的啊啊
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式