金蝉 窗帘:再帮忙看看哪里错了,SQL语句

来源:百度文库 编辑:高校问答 时间:2024/04/29 08:45:58
错误提示:Microsoft OLE DB Provider for ODBC Drivers (0x80040E21)
ODBC 驱动程序不支持所需的属性。
/mysite/result.asp, 第 24 行

然后下面是代码:
22行:<%set rst=Server.CreateObject("ADODB.Recordset")
23行: user=request.Form("user")
24行: rst.open "SELECT * from t_user where t_username=" & user,conn,1,1
%>
问题补充:不是单引号的问题~user前后换上单引号也是一样的错误提示

就是单引号的问题!!
<%
user=request.Form("user")
response.write user '看看能不能输出数据。
If user <>"" then
sql="SELECT * from t_user where t_username='" & user &"'"
set rst=Server.CreateObject("ADODB.Recordset")
rst.open sql,conn,1,1
...
end if
%>

因为在sql里 t_username字段是个字符串形式~
我们如果写在sql里是这样的
SELECT * from t_user where t_username='user'
但是放在asp中,上边本身就是一个字符串,所以要加上双引号区分,所以变成了
sql="SELECT * from t_user where t_username=' "

& user & " ' ", conn,1,1
两个双引号之间为一个字符串,如果不加单引号就会出现类型错误

建议你再次确定是不是单引号问题.

rst.open "SELECT * from t_user where t_username='" &user&"'",conn,1,1
%>

rst.open "SELECT * from t_user where t_username='" & user & "'", conn