怎样解决语法错误 (操作符丢失) 在查询表达式 'userid=' 中
发布网友
发布时间:2024-07-02 16:26
我来回答
共5个回答
热心网友
时间:2024-11-15 03:00
都是sql语句的问题,建议你能理解 & 字符和""
& 表示连接连字符串
如a= "hello"
a= a & "world"
这时a="helloworld"
被一对""包含的是字符串常量,a是字符变量,"hello"、"world"是字符串常量。
你那句
sql2="select title from readerinfo where userid="&session(user)&""
sql2的值是字符串常量"select title from readerinfo where userid="连接session(user)然后再连接""
因此如果你的 表readerinfo 的字段userid为字符型的话,变量应该用""括起来,因为外面有了"",所以要用'',例如sql="select * from readerinfo where userid='0'"
如果你的 表readerinfo 的字段userid为数字的话,就不用""了
例如sql="select * from readerinfo where userid=0"
这里你要查的userid为一个变量session(user)
因此要这么写:
当userid为数值类型的话:sql="select * from readerinfo where " & session(user)。sql的值是由一个字符串常量和一个变量连接成的
当userid为字符类型的话:sql="select * from readerinfo where '" &session(user) & "'"。sql的值是由一个字符串常量和一个变量连接成再加一个字符串连接成的
sql4是同一样的问题
sql5
sql5="insert into borrowinfo(userid,bookid,bookname,borrowtime,returntime)"
sql5=sql5&"values("&id&","&bookid&",'"&bookname&"','"&present&"','"&tpresent&"')"
如果你的id和bookid都是数值型的两边就不要有'了,否则要有'
热心网友
时间:2024-11-15 03:00
你都用的“where userid="&session("user")&"" ”
估计是你的session("user")的值为空,你Response.Write session("user")
看一看,另外,你的userid是什么类型的字段?你上面的语句只能使用数字,不能使用文本的~
热心网友
时间:2024-11-15 03:01
where userid='"&session("user")&"'"
热心网友
时间:2024-11-15 03:02
首先确保session("user")已经取到值并且为数字类型
sql1="select max(returntime) as maxtime from borrowinfo where userid="&session("user")
热心网友
时间:2024-11-15 03:02
sql="select
*
from
job
where
userid='"&companyid&"'
and
rge=1
order
by
[time]
desc"
或者
sql="select
*
from
job
where
userid=1
and
rge=1
order
by
[time]
desc"
试试