我的源代码是这样的:
<%
'连接数据库
Set Cn = Server.CreateObject("ADODB.Connection")
StrCnn="Provider=Microsoft.Jet.OLEDB.4.0;Data Source ="&server.MapPath("userdata.mdb")
Cn.Open StrCnn
'读取数据
sql="select * from userinfo where username='"& request.Form("username") &"'"
set rs=Cn.Execute(sql)
if rs.eof then
'添加数据
a=request.Form("username")
b=md5(request.Form("password"))
c=request.Form("sex")
d=request.Form("age")
e=request.Form("introduction")
f=request.Form("question")
g=request.Form("answer")
h=request.Form("email")
str = "insert into userinfo(username,password,sex,age,introduction,question,answer,email) values ('"&a&"','"&b&"','"&c&"','"&d&"','"&e&"','"&f&"','"&g&"','"&h&"')" <!--这里报错-->
cn.Execute(str)
response.Write("<script language='vbscript'>msgbox ""恭喜你!注册成功!"" </script>" )
response.Write"<a href = '../index.html'>返回登录</a>"
else
response.Write("<script language='vbscript'>msgbox ""您输入的用户名已经存在!请换名注册!"" </script>" )
end if
cn.close
set cn = nothing
%>
但是运行的时候浏览器总是报错,说insert into语句语法错误。但是如果将下面一行的代码cn.Execute(str)删去就不会报错了,但是数据也无法写入数据库了啊!我用的是access数据库!
各位帮帮忙!