标题: 问大家一个问题呀!关于查询的语句! [打印本页] 作者: 森林的眼泪 时间: 2010-1-14 05:32 标题: 问大家一个问题呀!关于查询的语句! 我有段数据库查询的代码:如下:<%
Rq=request.Form("typeid")
Lb=request.Form("ntypeid")
sql="select * from yao where Rq<>''"
if Rq<>"" then
sql=sql & " and (Rq like '%" & Rq & "%')"
end if
if Lb<>"" then
sql=sql & " and (Lb like '%" & Lb & "%')"
end if
session("chaxun_jilu")=sql
response.Redirect("infoquery1.asp")
%>
这段代码不知道有什么问题,当我什么条件也不写的时候,会查出数据库中所有的内容.当我写上条件的时候,就查不出来了,包括适合这些条件的信息也查不出来了,这是为什么呢? 帮忙看看呀,谢谢了作者: √死胖子 时间: 2010-1-14 05:32
就这样看不出问题作者: 逊一 时间: 2010-1-14 05:32
这是 查询页面的代码:适应人群:</span>
<%
set rs=server.createobject("adodb.recordset")
sql = "select * from class1"
rs.open sql,conn,1,1
if rs.eof and rs.bof then
response.write "请先添加栏目。"
response.end
else
%> <select name="typeid" onChange="changelocation(document.myform.typeid.options[document.myform.typeid.selectedIndex].value)" size="1">
<option selected value="">==请选人群==</option><%
do while not rs.eof
%> <option value="<%=rs("Class1ID")%>"><%=rs("Class1")%></option> <%
rs.movenext
loop
end if
rs.close%></select>
<span class="style2"> <span class="style1">产品类别</span></span>:
<select name="ntypeid"><option selected value=>==请选类别==</option></select>
<input type="submit" name="Submit" value="搜索">
这是进行模糊查询的语句:
<%
Rq=request.Form("typeid")
Lb=request.Form("ntypeid")
sql="select * from yao where Rq<>''"
if Rq<>"" then
sql=sql & " and (Rq like '%"&Rq&"%')"
end if
if Lb<>"" then
sql=sql & " and (Lb like '%"&Lb&"%')"
end if
session("chaxun_jilu")=sql
response.Redirect("infoquery1.asp")
%>
麻烦您们帮我看看那有问题呀?? 谢谢了各位作者: 航母风云 时间: 2010-1-14 05:32
可能是你那个为空那里的比较问题,如果你写成not isnull(Rq)的话就可能会没问题了作者: 无形的天空 时间: 2010-1-14 05:32
四楼大哥: 在那里写呀?作者: …═☆幻 时间: 2010-1-14 05:32
哦! 我知道了,是不是上面中的<option value="<%=rs("Class1ID")%>"><%=rs("Class1")%></option> 这句的value的值调的是数据库中的ID号.而Rq=request.Form("typeid") sql="select * from yao where Rq<>''"
if Rq<>"" then
sql=sql & " and (Rq like '%"&Rq&"%')"中yao这个表中的Rq是文本字段的原因呀???作者: 黑侠 时间: 2010-1-14 05:32
聪明,就是这样的咯,所以如果你要比较不等于空的话最好是用not isnull(字段名)