注册 登录
编程论坛 ASP技术论坛

问一个傻瓜问题!

yjq110 发布于 2008-05-07 18:53, 822 次点击
<%
   set rs=server.CreateObject("adodb.recordset")
    sql="select * from [user] where username='"&trim(request("username"))&"'"
    rs.open sql,secondconn,3,3
    if not rs.eof then
     errmsg=errmsg+"<br><li>用户名"+trim(request("username"))+"已被别人注册"
     founderr=true
     end if
     rs.close
     set rs=nothing
%>
谁帮我看看这段代码有没有错啊,为什么每次运行都是这一句:errmsg=errmsg+"<br><li>用户名"+trim(request("username"))+"已被别人注册"
问题二:
if not rs.eof then ‘帮忙解释一下这句的含义
sql1="select*from user where(userid is null)"     ’还有这句


谢谢谢谢~~~~~~
4 回复
#2
hmhz2008-05-07 23:19
<%
   set rs=server.CreateObject("adodb.recordset")
    sql="select * from [user] where username='"&trim(request("username"))&"'"
    rs.open sql,secondconn,3,3
    if not rs.eof then
     errmsg=errmsg+"<br><li>用户名"+trim(request("username"))+"已被别人注册"
     founderr=true
     end if
     rs.close
     set rs=nothing
%>
改成
<%
if conn.execute("select count(*) from [user] where username='"&trim(request("username"))&"'")(0)>0 then
errmsg=errmsg+"<br><li>用户名"+trim(request("username"))+"已被别人注册"
founderr=true
end if
%>

if not rs.eof then  '判断存在记录的时候执行下面的内容
where(userid is null) '查询 userid 的所有空记录
#3
bjbaima2008-05-08 15:28
楼上正确.
但if not rs.eof then最好改成
if not rs.eof and not rs.bof then
#4
yjq1102008-05-09 13:38
哦,明白了!!  谢谢1
#5
letian5842008-05-10 12:55
if not rs.eof and not rs.bof
意思为当不是查询的数据集的第一条虚记录或者最后一条虚记录时则执行下面的语句
比如说;在数据集中,你的真实数据库如果有30条记录,则在内存数据集中有32条记录,在首和尾个有一条虚记录,用于帮你判断是否存在真实记录
1