首先简单说一下情况,我用asp+access,更新课程信息表(表名为course_info)时,出现了以下情况.
update course_info Set name='商务英语',capacity='150',time='mon',room='学201',duration='2-18周',intro='' where number='473ce10'
Microsoft JET Database Engine '80040e14'
UPDATE 语句的语法错误。
/update1.asp, line 40
update1.asp的部分源码如下,红色标出的是第四十行代码,也就是自动提示出错的地方,我甚至在上一行用response.write输出了一下语句,看着是对了,我再检查了一下没有不允许空值的情况,数据类型也应该是正确的~但就不知道哪错,我郁闷了...
<% dim no, tp
no=trim(request.Form("number"))
sc=request.Form("school")
crtype=request.Form("crtype")
if len(no)=7 then '由课程号的长度判断是修改信息还是插入新的信息
tp="u"
num=CStr(no)
nam=request.Form("name")
tID=session("userno")
cap=CInt(request.Form("capacity"))
tim=request.Form("time")
ro=request.Form("room")
dur=request.Form("duration")
intro=request.Form("intro")
else
tp="i"
no1="4"&sc&crtype&no&"10"
num=no1
nam=request.Form("name")
tID=session("userno")
cap=CInt(request.Form("capacity"))
tim=request.Form("time")
ro=request.Form("room")
dur=request.Form("duration")
intro=""
end if
if tp="u" then
usql="update course_info Set name='"&nam&"',capacity='"&cap&"',time='"&tim&"',room='"&ro&"',duration='"&dur&"',intro='"&intro&"' where number='"&num&"'"
Response.Write(usql)
conn.Execute(usql)
if conn.errors.count>0 Then
Response.Write("<script language=javascript>")
Response.Write("alert('发生不明错误');")
Response.Write("window.history.go(-1);")
Response.Write("</script>")
else
Response.Redirect("default2.asp")
end if
else
isql="insert into course_info value('"&num&"','"&nam&"','"&tID&"','"&cap&"','"&tim&"','"&ro&"','"&dur&"','"&intro&"')"
Response.Write(isql)
'conn.Execute(isql)
if conn.errors.count>0 Then
'Response.Write("<script language=javascript>")
' Response.Write("alert('发生不明错误');")
' Response.Write("window.history.go(-1);")
'Response.Write("</script>")
else
Response.Redirect("default2.asp")
end if
end if %>