| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1581 人关注过本帖
标题:各位大哥,FROM 子句语法错误。
只看楼主 加入收藏
飘带飘
Rank: 1
等 级:新手上路
帖 子:73
专家分:0
注 册:2006-8-1
结帖率:0
收藏
 问题点数:0 回复次数:15 
各位大哥,FROM 子句语法错误。

<%
dim txtname
txtname=request("txtname")
if txtname="" then
response.write("没有输入查询关键字,请重新输入!")
response.end
end if
dim sql
sql=request("list")
select case list
case "title"
sql=title
case "nr"
sql=nr
end select


set conn=Server.CreateObject("ADODB.Connection")
Dbpath=Server.Mappath("abc.asp")
conn.Open"driver={Microsoft Access Driver (*.mdb)};dbq="&DBpath
Set rs=server.CreateObject("ADODB.Recordset")
strSql="select * from sc where"&sql&"like'%"&txtname&"%'"
rs.Open strSql,conn,1,3
%>

提示这一句:rs.Open strSql,conn,1,3
FROM 子句语法错误。

搜索更多相关主题的帖子: 子句 FROM 语法 Microsoft 
2006-08-01 10:32
yms123
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:209
帖 子:12488
专家分:19042
注 册:2004-7-17
收藏
得分:0 

strSql="select * from sc where "&sql&" like '%"&txtname&"%'"
空格有时也是要注意的问题的。

2006-08-01 10:36
飘带飘
Rank: 1
等 级:新手上路
帖 子:73
专家分:0
注 册:2006-8-1
收藏
得分:0 
版主呀
我把where后面的全去掉,就正常了
不知是怎么搞的,版主,我很菜的呀,帮我分析下吧
2006-08-01 10:45
hangxj
Rank: 6Rank: 6
等 级:贵宾
威 望:29
帖 子:2045
专家分:0
注 册:2006-4-10
收藏
得分:0 
dim sql
sql=request("list") 这里有错.应该是list=request("list") 吧? 要不然到后面,sql变成什么了?
select case list
case "title"
sql=title
case "nr"
sql=nr
end select

然后就是2楼所说的,注意要有空格
strSql="select * from sc where "&sql&" like '%"&txtname&"%'"




http://www./
2006-08-01 11:00
飘带飘
Rank: 1
等 级:新手上路
帖 子:73
专家分:0
注 册:2006-8-1
收藏
得分:0 

谢谢两位大哥
但还是没解决了我的问题,我把我的这个文件贴出来,你们帮我看看吧
文件名:index.asp
<div align="center">
<table border="0" cellpadding="0" cellspacing="0" width="90%">
<tr>
<td width="100%"><form action="index.asp" method="post">
<p align="left">
<font color="#FF0000">*</font><select size="1" name="list">
<option value="title">标题</option>
<option value="nr">内容</option>
</select>

<input name="txtname" type="text" id="txtname" value="<%=request("txtname")%>">
&nbsp;<input type="submit" value="查 询" name="submit"> <font color="#FF0000">请选择查询类别或输入查询关键字!</font></p>
</form></td>
</tr>
</table>
</div>
</center>

<%
dim txtname
txtname=request("txtname")
if txtname="" then
response.write("没有输入查询关键字,请重新输入!")
response.end
end if
dim list
list=request("list")
select case list
case "title"
list=title
case "nr"
list=nr
end select


set conn=Server.CreateObject("ADODB.Connection")
Dbpath=Server.Mappath("abc.asp")
conn.Open"driver={Microsoft Access Driver (*.mdb)};dbq="&DBpath
Set rs=server.CreateObject("ADODB.Recordset")
strSql="select * from sc where "&list&" like '%"&txtname&"%'"
rs.Open strSql,conn,1,3
'如果记录集不是空的,就执行分页显示
If Not rs.Bof And Not rs.Eof Then

'判断当前显示第几页,如果是第一次打开,为1,否则由传回的参数决定
Dim page_no
If Request.Querystring("page_no")="" Then
page_no=1
Else
page_no=Cint(Request.QueryString("page_no"))
End If

'开始分页显示
rs.PageSize=2 '设置每页显示2条记录
rs.AbsolutePage=page_no
Dim I
I=rs.PageSize
Do While Not rs.Eof And I>0
I=I-1

%>

<table border="1" cellpadding="0" cellspacing="0" width="90%" bgcolor="#FFFFFF" bordercolorlight="#EAEAEA" bordercolordark="#FFFFFF" id="table1">
<tr>
<td width="100%" align="center"><%=rs("title")%> </td>
</tr>
<tr>
<td width="100%" align="center"><%=rs("zz")%>[<%=rs("sd")%>]</td>
</tr>
<tr>
<td width="100%" align="center"><%=rs("nr")%> </td>
</tr>
<tr>
<td width="100%"><%=rs("zs")%> </td>
</tr>
</table>

<%
rs.MoveNext
Loop
%>
<%

'显示页数信息

Response.Write"请选择页数"
For I=1 to rs.PageCount
If I=page_no then
Response.Write I &"&nbsp"
Else
Response.Write"<a href='index.asp?page_no="&I&"&txtname="&name&"'>"& I &"</a>&nbsp"
End If
Next

Else
Response.Write"该记录集为空"
End If
'关闭对象
rs.Close
Set rs=Nothing
conn.Close
Set conn=Nothing
%>

现在提示的错误是:语法错误 (操作符丢失) 在查询表达式'link'%我输入的关键字%''中。
rs.Open strSql,conn,1,3 在这一句


[此贴子已经被作者于2006-8-1 11:40:49编辑过]

2006-08-01 11:35
water123456
Rank: 5Rank: 5
等 级:贵宾
威 望:15
帖 子:3208
专家分:5
注 册:2006-2-21
收藏
得分:0 
你sql语句有问题,你测试以下你的sql语句,就知道了.

让我们风风火火的过一生,别平平淡淡过一年。
2006-08-01 11:36
hangxj
Rank: 6Rank: 6
等 级:贵宾
威 望:29
帖 子:2045
专家分:0
注 册:2006-4-10
收藏
得分:0 
strSql="select * from sc where "&list&" like '%"&txtname&"%'"

请自己确认一下这两个地方的值是否传过来了?

http://www./
2006-08-01 11:40
飘带飘
Rank: 1
等 级:新手上路
帖 子:73
专家分:0
注 册:2006-8-1
收藏
得分:0 
谢谢你们了!
这个程序就这一个文件(就是上面代码)再加一个数据库,
strSql="select * from sc where "&list&" like '%"&txtname&"%'"

list和txtname我不会测试,但我把where后的去掉后就都正常了
我问了好多人的, 都还没结果
2006-08-01 11:49
hangxj
Rank: 6Rank: 6
等 级:贵宾
威 望:29
帖 子:2045
专家分:0
注 册:2006-4-10
收藏
得分:0 

这样吧,你试一下
strSql="select * from sc where title like '%"&txtname&"%'" title是你数据中的一个字段哦?

http://www./
2006-08-01 11:57
water123456
Rank: 5Rank: 5
等 级:贵宾
威 望:15
帖 子:3208
专家分:5
注 册:2006-2-21
收藏
得分:0 
title可是一个关键子,要注意

让我们风风火火的过一生,别平平淡淡过一年。
2006-08-01 12:37
快速回复:各位大哥,FROM 子句语法错误。
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017439 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved