在Asp中存取数据库图片信息在Asp中存取数据库图片信息,必须:
1。用Request.BinaryRead()来获取上传的二进制数据。
2。用ADO.AppendChunk来存入数据库,用ADO.GetChunk来获取数据。
3。用Response.BinaryWrite来显示图片。
参考代码:
上传页面
<HTML>
<BODY>
<Form name="MainForm" enctype="multipart/form-data" action="inImage.asp" method="Post">
<input type=file name=imFile><br>
<input type=submit name=OK value="UPLOAD">
</FORM>
</BODY>
</HTML>
录入页面
<%
response.buffer= True
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)
set ConnGraph =Server.CreateObject("Adodb.Connection")
ConnGraph.ConnectString="Driver={...这里就是你的数据库连接串
ConnGraph.Open
set rec=Server.CreateObject("Adodb.recordst")
rec.Open "Select * From [Image] where id is null",ConnGraph,1,3
rec.addnew
rec("img").appendchunk mydata这句是关键
rec.update
rec.close
set rec = Nothing
set ConnGraph = Nothing
%>
显示图片
<%
set ConnGraph =Server.CreateObject("Adodb.Connection")
ConnGraph.ConnectString="Driver={...这里就是你的数据库连接串
ConnGraph.Open
set rec=Server.CreateObject("Adodb.recordst")
strSQL="Select img From [Image] where id ="&trim(request"id"))
rec.Open strSQL,ConnGraph,1,1
Response.ContentType = "image/*"
Response.BinaryWrite rec("img").getChunk(7500000)
rec.close
setrec = Nothing
set ConnGraph = Nothing
%>