主题:大家帮看看是怎么回事
awen2008
[专家分:30] 发布于 2007-02-27 22:21:00
.......
rs.open "select * from wupin where anclassid="&anclassid&" order by 入库时间 desc",conn,1,1
end if
if rs.recordcount=0 then
%>
<table width="370" border="0" cellspacing="0" cellpadding="5" align="center">
<tr>
<td align=center>不好意思!数据库中暂无物品记录!</td>
</tr>
</table>
<%
else
......
以上代码,调试运行老是出现“不好意思!数据库中暂无物品记录!”,可是我数据库里明明有记录啊。
运行能够出现这行设定的提示,表明前面的代码没有错。那么是不是 else......后面(这里省略)这部分错误?大家帮忙解释下。
回复列表 (共6个回复)
沙发
wangsdong [专家分:21390] 发布于 2007-02-28 08:41:00
rs.open "select * from wupin where anclassid="&anclassid&" order by 入库时间 desc",conn,1,1
建议这样写
sql="select * from wupin where anclassid="&anclassid&" order by 入库时间 desc"
rs.open sql,conn,1,1
如果出了问题,在rs.open 前面加上
response.write sql
response.end
可以将sql语句输出来看看输出的结果有没有问题
板凳
awen2008 [专家分:30] 发布于 2007-02-28 21:47:00
请大家真心解答,不要在这里直接或间接发广告。
感谢1楼兄弟的回答。但我认为不是后面的错。它既然能够输出:“不好意思!数据库中暂无物品记录”这句设定的提示,就表明前面的条件if rs.recordcount=0 then 为真,否则它就会执行 else
后面的语句了。你说是吗?可是我的数据库里明明登记有十几条记录,它怎么会是“真”呢?rs.recordcount 怎么会统计出库里的记录为0呢呢?失灵了?想不明白!着急!!
3 楼
VCII [专家分:1710] 发布于 2007-03-01 22:10:00
rs.open "select * from wupin where anclassid="&Trim(anclassid)&" order by 入库时间 desc",conn,1,1
if rs.recordcount=0 then 改成If Rs.Eof And Rs.Bof Then
-------------以上试试,如果不行的话,,建议把查询条件去掉。如果可以输入出内容,说明是查询条件的问题。
4 楼
lq7350684 [专家分:320] 发布于 2007-03-03 14:30:00
3楼的方法可行.
5 楼
awen2008 [专家分:30] 发布于 2007-03-04 18:15:00
[quote]3楼的方法可行[/quote]试过了,还是不行。
[quote]-------------以上试试,如果不行的话,,建议把查询条件去掉。[/quote]
这样就没有意义了,因为我在index.asp首页里,已经显示全部记录了。这个class.asp页就是要分类查询。
至于说查询条件的问题,会不会是ID问题。但我有设置检测ID的,如果ID值为空,则提示:“非法访问!”如果ID问题,它应该是提示“非法访问!”而不是“没有记录”啊。
想不明白。
6 楼
awen2008 [专家分:30] 发布于 2007-03-04 18:19:00
不过我有一个新发现:在这个系统里我凡是用记录ID进行的操作比如:删除记录,修改记录等,按ID作为关键字传递的话都不成功。把它改为其它字段如名称等作关键字,就可以。会不会是这个问题而导致if rs.recordcount=0 then (或If Rs.Eof And Rs.Bof Then)统计不到数据的存在呢?
说明:数据表记录的ID是自动编号的。
我来回复