为什么在ASP搜不出结果?高手请指点!在线等回复!
我在做一个搜索功能时,用到这样的SQL语句:SELECT zId, proName, pic
SELECT zId, proName, pic
FROM pro
WHERE (proName='产品' Or proName Like '*产品' Or proName Like '产品*');
这里用的ASP+ACCESS进行开发的,很奇怪,如果我将该语句用ACCESS进行查询,能得出recordcount=4,但在ASP中查询,结果却为0!
请高手指点!
问题点数:20、回复次数:12Top
1 楼lyexcel(冰上飞人)回复于 2005-06-01 16:49:40 得分 4
不是 sql 的问题, 是代码的问题.
贴出来看看Top
2 楼jetcrane(风)回复于 2005-06-01 16:55:13 得分 0
ASP部分代码如下:
<%dim rsI,i,strI
i=request("txtPronm")
'response.Write(i)
strI="SELECT zId,proName,pic FROM pro WHERE (proName='" & i & "' Or proName Like '*" & i & "' Or proName Like '" & i & "*')"
strI2="SELECT zId,proName,pic FROM pro WHERE (proName='美容笔' Or proName Like '*美容笔' Or proName Like '美容笔*');"
response.Write(strI)
set rsI=server.CreateObject("adodb.recordset")
rsI.open strI2,cnP,3,3
response.Write(rsI.recordcount)
if rsI.eof=false then
%>
这里我插入了调试语句,就是我我把strI,改成strI2,都没有想要得到的结果?
谢谢指点!Top
3 楼lonaerd(redhat10)回复于 2005-06-01 17:00:02 得分 1
你直接
SELECT zId,proName,pic FROM pro WHERE proName Like '*"&i&"*'"
不就可以了吗?
Top
4 楼jbj001(贾不假)回复于 2005-06-01 17:02:39 得分 4
where proname like '%美容笔%'Top
5 楼aryou(桔子)回复于 2005-06-01 17:05:31 得分 3
strI="SELECT zId,proName,pic FROM pro WHERE (proName='" & i & "' Or proName Like '%" & i & "%' Or proName Like '%" & i & "%')"
strI2="SELECT zId,proName,pic FROM pro WHERE (proName='美容笔' Or proName Like '%美容笔%' Or proName Like '%美容笔%');"Top
6 楼jetcrane(风)回复于 2005-06-01 17:18:55 得分 0
为什么要将*改为%?Top
7 楼liulanghe(流浪河)回复于 2005-06-01 18:09:26 得分 1
为什么要将*改为%?
这个SQL 语法 没有那么多为什么的Top
8 楼mrqianliang(凌)回复于 2005-06-01 18:26:09 得分 3
将SQL语名改为:
"SELECT zId, proName, pic
FROM pro
WHERE proName like '%产品%'"
即可,Top
9 楼cslren(位流)回复于 2005-06-01 18:54:30 得分 3
ODBC 用 *
ado 用 %Top
10 楼jinhaokangkang(漫游无限)回复于 2005-06-01 20:47:51 得分 1
对,用%Top
11 楼renjunjun(飞黄)回复于 2005-06-02 02:13:36 得分 0
来迟Top
12 楼asp1110()回复于 2005-06-02 07:49:53 得分 0
100MB asp和 asp.net空间 50/1年
我看到了一个网站 100MB asp和 asp.net空间 现在促销,
同学们可以做一个简单的个人网站用来找工作 ,
支持 asp.net 一年才50元!不要错过哦!!!
速度非常快,一般公司企业 足够用了!
http://www.hi876.com
希望能对大家有帮助Top




