日期:2014-05-17  浏览次数:20937 次

如何把数据库里存的文件下载下来?
大家好,在学习中遇到了个问题,希望知道的帮帮我``先谢谢了

问题是这样的:在我们123.mdb这个数据库中有一个名为User_File表,该表有3个字段UserId(主建,自动编号),FileContentType(Text类型),FileContent(ole对象).现在该表中有一条记录,是我用上传操作添加到数据库里的(随便选择的一个文件).打开表显示如下面.

UserID FileContentType FileContent
8 image/bmp                   长二进制数据

但是我不知道该怎么样把这个文件从数据库里下载下来.
简单的说就是我现在想做个页面上面有个文字连接,点这个文字连接,就出现下载的那个对话框.不需要传什么参数什么的,点连接就是下这个文件就行了.

现在我写了个页面,代码如下

<html>
<head>
<meta   http-equiv= "Content-Type "   content= "text/html;   charset=gb2312 ">
<title> 无标题文档 </title>
</head>
<body>
 
<a   href=down.asp?UserID=8> 下载
<%
                  UserID=Request( "UserID ")
  set   conn   =   Server.CreateObject( "ADODB.Connection ")
dim   dbpath
dbpath=Server.MapPath( "123.mdb ")
conn.Open   "Driver={Microsoft   Access   Driver   (*.mdb)};   DBQ= "&dbpath

                  set   rs=server.CreateObject( "adodb.recordset ")
                  sql= "SELECT   *   FROM   User_File   where   UserID= "&UserID& " "
                  rs.Open   sql,conn,3,3
            response.contenttype=rs( "FileContentType ")
            Response.BinaryWrite   rs( "FileContent ")
                  rs.close
                  set   rs=nothing
                  conn.close
                set   conn=nothing
%>
</a>
</body>
</html>

但是这样写,打开后页面上显示的是一些乱码,不知道是怎么回事,望各位指点..



------解决方案--------------------
我没玩过,做过记号先