asp+access:无法从数据库中读取数据

asp+access数据库名称:Show_img,表:img,字段:id-自动编号,imgdata-OLE.conn.asp<%dimconn,rsfunctionget... asp+access
数据库名称:Show_img,表:img,字段:id-自动编号,imgdata-OLE.
conn.asp
<%
dim conn,rs

function getdata(sql)
dbpath="dbl/Show_img.mdb"
set conn=server.CreateObject("ADODB.connection")
connstr="provider=Microsoft.jet.oledb.4.0;data source="&server.MapPath(dbpath)
conn.open connstr
set rs=server.CreateObject("ADODB.recordset")
rs.open sql,conn,3,2

end function

sub rsclose()
rs.close()
set rs=nothing
conn.close()
set conn=nothing
end sub
%>
-------------------------------------------------------------------------------------------------------
up.asp
<body>
<div align="center">
<form action="up.asp" method="post" enctype="multipart/form-data" >
<input type="file" size="12" name="imgurl" id="imgurl">
<input type="submit" value="upload">
</form>
</div>
</body>
</html>
<%
if (request.totalbytes)>0 then '如果有数据提交,则进行下面的处理
%>
<!--#include file="conn.asp"-->
<%
formsize=request.totalbytes
formdata=request.binaryread(formsize)
bncrlf=chrB(13)&chrB(10)
divider=leftB(formdata,clng(instrb(formdata,bncrlf))-1)
datastart=instrb(formdata,bncrlf&bncrlf)+4
dataend=instrb(datastart+1,formdata,divider)-datastart
mydata=midb(formdata,datastart,dataend)
sql="select * from img"
getdata(sql)
rs.addnew
rs("imgdata").AppendChunk myData
rs.update
rsclose()
response.clear
response.write "success!"
end if
%>
---------------------------------------------------------------------------------------------------------
show.asp
body>
<!--#include file="conn.asp"-->
<%
dim id
id=trim(request("id"))
sql="select * from img where id="&id
getdata(sql)
Response.ContentType="image/jpg"
Response.BinaryWrite rs("img_url").getChunk(8000000)
rsclose()
%>

</body>
</html>
--------------------------------------------------------------------------------------------------------
imgshow.asp
<body>
<!--#include file="conn.asp"-->
<div align="center">
<img src="show.asp?id=<%rs("id")%>" />
</div>
</body>
</html>
可正常上传,不过运行show.asp时,出现:错误类型:
Microsoft JET Database Engine (0x80040E14)
语法错误 (操作符丢失) 在查询表达式 'id=' 中。
/conn.asp, 第 11 行
估计id有问题,但不知道在哪里,那位高手可答,急!
展开
 我来答
犀利的胡茬子
2010-10-15 · TA获得超过663个赞
知道小有建树答主
回答量:853
采纳率:50%
帮助的人:590万
展开全部
这问题很明显啊 id参数没有接收到
1楼说不要空格 空格不影响
2楼说id只不能是字符串类型 这个也不影响
因为他本来就要写到字符串里 在传给数据库

这种问题 只能你自己试试了 靠代码来看 很累眼睛
你可以在sql语句上面输出一下id
request.write(id)
request.end()
这样一点一点测试
====
哈 看了下代码 发现错误了
<img src="show.asp?id=<%rs("id")%>" /> 这是你的
<img src="show.asp?id=<%=rs("id")%>" /> 这个改的 少个=号

上面回答那些 以后可以用
恋红2010
2010-10-15 · TA获得超过1961个赞
知道大有可为答主
回答量:1469
采纳率:50%
帮助的人:572万
展开全部
字段中ID是自动编号的,一般是长整型的,而从参数中获得的ID值可能类型与之不同,可在上句中将ID转换为长整型的.至于1楼问的是否要空格,字符串用&串接时有没有空格在VBS中不影响代码解析.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
linduinc
2010-10-15
知道答主
回答量:27
采纳率:0%
帮助的人:17万
展开全部
<img src="show.asp?id=<%rs("id")%>" />

<%rs("id")%>少写了一个 =
改成
<%=rs("id")%>
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
士芮安08
2010-10-14 · TA获得超过3万个赞
知道大有可为答主
回答量:5449
采纳率:40%
帮助的人:1176万
展开全部
sql="select * from img where id="&id
不空格行吗?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式