运行写入ACCESS数据库时,出现INSERT INTO 语句的语法错误,不能把数据写入数据库?

<%OPTIONEXPLICIT%><!--#includeFILE="vcls8.asp"--><%dimupfile,formPath,ServerPath,FSPa... <%OPTION EXPLICIT%>
<!--#include FILE="vcls8.asp"-->
<%
dim upfile,formPath,ServerPath,FSPath,formName,FileName,oFile,upfilecount,baks
upfilecount=0
set upfile=new clsUp ''建立上传对象
upfile.NoAllowExt="asp;exe;rar;zip;vbs;php;htm;html;aspx;cs;vb;js;" '设置NO上传类型
upfile.GetData (10240000) '10M
%>
<html>
<head>
<title>文件上传</title>
<%
if upfile.isErr then '如果出错
select case upfile.isErr
case 1
Response.Write "你没有上传数据呀?"
case 2
Response.Write "你上传超出限制10M"
end select
else
%>
<table border="1" cellpadding="0" cellspacing="0" bordercolor="#000099" class="p9" style="border-collapse: collapse">
<tr bgcolor="#0066CC">
<td height="25" valign='middle'><div align="center"><span class="style1"> 本地文件 </span></div></td>
<td valign='middle'><div align="center"><span class="style1"> 大小(字节) </span></div></td>
<td valign='middle'><div align="center"><span class="style1"> 上传到 </span></div></td>
<td valign='middle'><div align="center"><span class="style1"> 状态 </span></div></td>
</tr>
<%
FSPath=GetFilePath(Server.mappath("savetofile.asp"),"\")'取得当前文件在服务器路径
ServerPath=GetFilePath(Request.ServerVariables("HTTP_REFERER"),"/")'取得在网站上的位置
for each formName in upfile.file '列出所有上传了的文件
set oFile=upfile.file(formname)
FileName=upfile.form(formName)'取得文本域的值

if oFile.filename="" then
response.write"请选择上传文件!"
response.end
end if
if not FileName>"" then FileName=oFile.filename'没输入新的文件名,用原文件名
upfile.SaveToFile formname,FSPath&"upfile/"&FileName ''保存文件,但是会自动建立新的文件名
'将上传信息写入数据库
dim conn,db,uppath,sql,FileExt
Set conn=Server.CreateObject("ADODB.Connection")
db="upload.mdb"
conn.open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&Server.MapPath(""&db&"")
'conn.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ="&Server.MapPath(""&db&"")
uppath="upfile/"&FileName

sql = "insert into upload(upfile,filename,filetype,filesize,baks) values ('"& uppath &"','"&oFile.FileName&"','"&

oFile.FileExt &"',"&oFile.filesize&","&baks&")"
conn.execute sql

%>
展开
 我来答
笑天0917
2006-06-12 · 超过30用户采纳过TA的回答
知道答主
回答量:222
采纳率:0%
帮助的人:125万
展开全部
你写的后两个字段缺少单引号:这样就好啦
sql = "insert into upload(upfile,filename,filetype,filesize,baks) values ('"& uppath &"','"& oFile.FileName &"','"&
oFile.FileExt &"','"& oFile.filesize &"','"& baks &"')"
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
yuxichu
2006-06-12 · TA获得超过130个赞
知道答主
回答量:132
采纳率:100%
帮助的人:0
展开全部
代码中没有给baks赋值
sql = "insert into upload(upfile,filename,filetype,filesize,baks) values ('"& uppath &"','"&oFile.FileName&"','"&
oFile.FileExt &"',"&oFile.filesize&","&baks&")"

如果代码中确实不需给BAKS赋值,那么可以改成如下形式:

sql = "insert into upload(upfile,filename,filetype,filesize) values ('"& uppath &"','"&oFile.FileName&"','"&oFile.FileExt &"',"&oFile.filesize&")"

如果需要给BAKS赋值,那么加入相应的赋值语句,并将SQL改成下面的形式:

sql = "insert into upload(upfile,filename,filetype,filesize,baks) values ('"& uppath &"','"&oFile.FileName&"','"&
oFile.FileExt &"',"&oFile.filesize&",'"&baks&"')"

祝你好运!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式