sql语句里的where条件为变量请问怎么写

ohyeyeyeyeye 2005-04-07 12:51:51
请教大家where显程序变量时怎么引用的
sql="varie='儿童音乐'"
sqlpop="select * from music where "&sql
如上写调试时提示说where子句语法错误
我又听人说这样子写,
sqlpop="select * from music where ("&sql&")"
可是又提示说()里的操作符丢失,请问大家到底应该怎么写

...全文
1285 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
mayi545 2005-04-07
  • 打赏
  • 举报
回复
试试这个
sqlpop="select * from music where varie="&sql
lv_kevin 2005-04-07
  • 打赏
  • 举报
回复
原来的写法没问题,看看是不是有关键字冲突
下面的写法应该肯定是错的。
ohyeyeyeyeye 2005-04-07
  • 打赏
  • 举报
回复
呵呵,已经解决了,不是SQL语句的问题,是程序里的变量问题,不过很奇怪case后的变量名不能加引号,加了就显示不出str,不加才能正常调用str
tyhn168 2005-04-07
  • 打赏
  • 举报
回复
上面的老兄,注意如果不是数字变量的话:
strpop="select * from music where "&sql&""
这句应该改为:
strpop="select * from music where [字段名]='"&sql&"'"
多个单引号!
dick_lee 2005-04-07
  • 打赏
  • 举报
回复
学过asp的人应该懂得调试脚本错误,我的建议:有先后的顺序的。
1、你写个response.write(sql&sqlpop),运行一看就知道了哪错了。
2、你把那个sql的内容在数据库里查询运行一下是否能正常。
3、直接写sqlpop="select * from music where varie='儿童音乐'"测试一下便知。
4、正确细节问题:sqlpop="select * from [music] where (varie='儿童音乐')",试试。
5、只好看数据表的字段设置,注意属性。
ohyeyeyeyeye 2005-04-07
  • 打赏
  • 举报
回复
select case action
case "popmale"
title="aaa"
str="sex='aaa'"

case "popfemale"
title="bbb"
str="sex='bbb'"
end select
呵呵,str是程序里的变量,要作为where后的整个内容
strpop="select * from music where "&sql 这一句曾经调试通过过,但是后来修改了就一直显示where子句语法错误.(注:并没有修改SQL语句)
strpop="select * from music where "&sql&""一样提示where子句语法错误,

我想应该不是SQL语句错误,它的提示不完全能作为依据,谢谢大家.


hhjjhjhj 2005-04-07
  • 打赏
  • 举报
回复
sqlpop="select * from music where "&sql
是对的


习惯于用response.write进行调试是“不求人”的简单有效的办法。

response.write sqlpop
response.end
创造奇迹9999 2005-04-07
  • 打赏
  • 举报
回复
sql="select * from music where "&sql&""
yjb136 2005-04-07
  • 打赏
  • 举报
回复
SQL为变量是用:
sqlpop="select * from music where varie="&sql&""

SQL为字符时:
sqlpop="select * from music where varie='sql'"

28,406

社区成员

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

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