我有一个通过文本框输入的,在ASP中要调用前面的文本内容作为数据库搜索字段,怎么错了呢?

bwi 2001-11-27 08:38:48
我有一个通过文本框输入的,在ASP中要调用前面的文本内容作为数据库搜索字段,怎么错了呢?在strsql后不加where就可以,加了where就报错!请高手指教!

dim text
text=request.form("txtstation")
set conn=server.createobject("adodb.connection")
conn.open "start"
strsql="select * from station where first='"&text&"'"
set rs=server.createobject("adodb.recordset")
rs.source=strsql
rs.activeconnection=conn
...全文
151 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
balloy 2001-12-07
  • 打赏
  • 举报
回复
为了调试
bwi 2001-11-28
  • 打赏
  • 举报
回复
为什么要先这样
balloy 2001-11-28
  • 打赏
  • 举报
回复
不用where语句时不报错,说明where语句出了问题。

我认为有两种可能:
1。 text中含有单引号,使Sql语句出错,解决方法是: first='" & Replace(text, "'", "''") & "'"

2。 就是你的单引号输错了,输成全角的了,解决方法当然是换为',其实CommerceServer(商业秘密[::路德一族::]) 都说过了

另外,我可以问个问题吗?你的conn.open "start"这一句是什么意思,我以前没有过这种用法。
balloy 2001-11-28
  • 打赏
  • 举报
回复
你先
Response.write strsql
response.end
bwi 2001-11-28
  • 打赏
  • 举报
回复
单引号是成对出现的!
julyclyde 2001-11-28
  • 打赏
  • 举报
回复
textbox里边输入了单引号,你的SQL的引号就不配对了
bwi 2001-11-28
  • 打赏
  • 举报
回复
conn.open是打开我的数据库
另外,我的'肯定用的是半角的,不过你的第一种可能我不太理解,能解释一下吗?
CommerceServer 2001-11-27
  • 打赏
  • 举报
回复
你还写客户端脚本了吗?结果查询出来吗?
bwi 2001-11-27
  • 打赏
  • 举报
回复
不是这些原因!

不用where语句时不报错,数据库搜索正常;用了where语句后会报后面的一些语句错,这是什么原因呢?
CommerceServer 2001-11-27
  • 打赏
  • 举报
回复
报的什么错?不会是全角引号半角引号或文本框中输入了单引号的错误吧!
把错误报一下!

28,406

社区成员

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

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