让我郁闷的不行的SQL语句

来源:百度知道 编辑:UC知道 时间:2024/06/23 08:28:28
wd=cstr(0)
set rs=server.createobject("adodb.recordset")
sql="select * from xiaoxi where geter='"&usr&"' and read='"&wd&"'"
rs.open sql,Conn,1,1

用Response可以输出wd,但就是出错,把SQL语句后面的 and read='"&wd&"'去掉就好了!
wd=cstr(0)
set rs=server.createobject("adodb.recordset")
sql="select * from xiaoxi where geter='"&usr&"'"
rs.open sql,Conn,1,1

这样就好了
基本上没错误啊
我数据库的read字段是文本型的
谢谢了

read是关键字,所以默认情况下 他不会把如read、name、form等可以作为关键字的字符作为字段名称来编译的,所以要特别加上[]以标实该字符为字段名称,这样就不会出错了:
sql="select * from xiaoxi where geter='"&usr&"' and [read]='"&wd&"'"

sql="select * from xiaoxi where geter='"&usr&"' and [read]='"&wd&"'"

sql="select * from xiaoxi where geter='"&usr&"' and [read]='"&wd&"'"

sql="select * from xiaoxi where geter='"&usr&"' and read="&wd&""

sql="select * from xiaoxi where geter='"&usr&"' and [read]='"&wd&"'"

同user830316所说,所以建议以后字段名最好不要和关键字一样,比如read可以改成readed,这样会减少很多莫名其妙的错误