语句未结束

csxsjt 2007-09-04 10:17:56
语句未结束

/result1.asp,行162

sql="SELECT tit,au1,pyear FROM "&table&" where contains ("&sSelect&",'"&searchword0&"') "&sselect3&"contains ("sSelect2&",'"&searchword1&"') and contains (pyear,'"&sselect5&"')"
-----------------------------------------------------------------------------------------------------------------^
...全文
285 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
csxsjt 2007-09-04
  • 打赏
  • 举报
回复
这是原始程序

csxsjt 2007-09-04
  • 打赏
  • 举报
回复

<%

Dim maxpages
Dim sql
Dim totalrecord
Dim thepage
Dim TotalPages
totalrecord=0
thepage=0
TotalPages=0

If Not IsNumeric(Request("page")) Then
Response.write"<script>alert(""请输入一个数字!"");location.href=""javascript:history.back()"";</script>"
End If
If Not isempty(Request("page")) Then
thepage=cint(Request("page"))
Else
thepage=1
End If
dim sSelect,sSelect0,sSelect2,sSelect3,sSelect5,select1,Select3,Select5,Select7,select9,Select10,select16,searchword0,searchword1,searchword2,table,x,z,q
z=0
q=0
select1=Session("select1") '中文会议、学位
Select3=Session("select3") '西文会议、学位
Select5=Session("select5") '中国专利
select7=Session("select7") '国外专利
select9=Session("select9") '标准
select10=Session("select10") '全部记录或文摘
select16=Session("select16") '每页显示条数
sSelect0=Session("sSelect0") '模糊查询、精确查询
sSelect=Session("sSelect") '第一检索入口
sSelect2=Session("sSelect2") '第二检索入口
sSelect3=Session("sSelect3") '与、或、非
sSelect5=Session("sSelect5") '年代

searchword0=Session("searchword0")
searchword1=Session("searchword1")



if sselect3="非" then select3="and not" end if

Set rs1=Server.CreateObject("ADODB.RecordSet")
sql1=" select * from form "

rs1.open sql1,conn,1,1

Do until table<>""
flagg=rs1("name")
if instr(select1,flagg)<>0 then table=rs1("form") end if
if instr(select3,flagg)<>0 then table=rs1("form") end if
if instr(select5,flagg)<>0 then table=rs1("form") end if
if instr(select7,flagg)<>0 then table=rs1("form") end if
if instr(select9,flagg)<>0 then table=rs1("form") end if

'if table<>"" then
if sselect0=0 then
if sselect5=0 then
if select10=0 then
sql="SELECT tit,au1,pyear FROM "&table&" where contains ("&sSelect&",'" &searchword0&"') "&sselect3&" contains ("&sSelect2&",'"&searchword1&"') "
else
sql="SELECT tit,au1,pyear FROM "&table&" where contains ("&sSelect&",'"&searchword0&"') "&sselect3&"contains ("&sSelect2&",'"&searchword1&"') and AB<>"""
end if
else
if select10=0 then
sql="SELECT tit,au1,pyear FROM "&table&" where contains ("&sSelect&",'"&searchword0&"') "&sselect3&"contains ("&sSelect2&",'"&searchword1&"') and contains (pyear,'"&sselect5&"')"
else
sql="SELECT tit,au1,pyear FROM "&table&" where contains ("&sSelect&",'"&searchword0&"') "&sselect3&"contains ("&sSelect2&",'"&searchword1&"') and AB<>"" and contains (pyear,'"&sselect5&"')"
end if
end if
else
if sselect5=0 then
if select10=0 then
sql="SELECT tit,au1,pyear FROM "&table&" where ("&sSelect&" = '%"&searchword0&"%') "&sselect3&" ("&sSelect2&" = '%"&searchword1&"%') "
else
sql="SELECT tit,au1,pyear FROM "&table&" where ("&sSelect&" = '%"&searchword0&"%') "&sselect3&" ("&sSelect2&" = '%"&searchword1&"%') and AB<>"""
end if
else
if select10=0 then
sql="SELECT tit,au1,pyear FROM "&table&" where ("&sSelect&" = '%"&searchword0&"%') "&sselect3&" ("&sSelect2&" = '%"&searchword1&"%') and pyear="&sselect5&" "
else
sql="SELECT tit,au1,pyear FROM "&table&" where ("&sSelect&" = '%"&searchword0&"%') "&sselect3&" ("&sSelect2&" = '%"&searchword1&"%') and AB<>"" and pyear="&sselect5&""
end if
end if
end if
'end if
csxsjt 2007-09-04
  • 打赏
  • 举报
回复
Microsoft OLE DB Provider for SQL Server 错误 '80040e14'
列名 '标题' 无效。

/result1.asp,行232
香椿炒鸡蛋 2007-09-04
  • 打赏
  • 举报
回复
先实现功能 再去改进算法吧
香椿炒鸡蛋 2007-09-04
  • 打赏
  • 举报
回复
用索引吧。。
csxsjt 2007-09-04
  • 打赏
  • 举报
回复
我以前是用like 进行组合查询的,但是记录太多,我现在用全文检索来加快检索速度,所以用contains,但是不知道行不行
香椿炒鸡蛋 2007-09-04
  • 打赏
  • 举报
回复
ANDcontains 为什么不加空格呢 AND contains
csxsjt 2007-09-04
  • 打赏
  • 举报
回复
刚才哪个问题好了,现在又遇到这个问题:

Microsoft OLE DB Provider for SQL Server 错误 '80040e14'
第 1 行: 'ANDcontains' 附近有语法错误。

/result1.asp,行232
香椿炒鸡蛋 2007-09-04
  • 打赏
  • 举报
回复
楼主信誉分怎么会那么少哦
创造奇迹9999 2007-09-04
  • 打赏
  • 举报
回复
细节问题一定要注意
创造奇迹9999 2007-09-04
  • 打赏
  • 举报
回复
sql="SELECT tit,au1,pyear FROM "&table&" where contains ("&sSelect&",'"&searchword0&"') "&sselect3&"contains ("&sSelect2&",'"&searchword1&"') and contains (pyear,'"&sselect5&"')"


sSelect2前少了一个&
香椿炒鸡蛋 2007-09-04
  • 打赏
  • 举报
回复
sql="SELECT tit,au1,pyear FROM "&table&

" where contains ("
&sSelect&
",'"&searchword0&"') "
&sselect3&
"contains ("
&sSelect2&",'"&searchword1&
"') and contains (pyear,'"&sselect5&"')"

再试一下看看 sSelect2 前面好像少了一个 &
csxsjt 2007-09-04
  • 打赏
  • 举报
回复
语法问题出在那里
toury 2007-09-04
  • 打赏
  • 举报
回复
SQL语句语法有问题,仔细检查一下.
另外,如果你的 searchword0 等变量是字符串的话在单引号里还要加双引号,比如:
("&sSelect&",'"""&searchword0&"""')

28,391

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧