IT猫扑网:您身边最放心的安全下载站! 最新更新| 软件分类| 专题汇总| 手机版

您当前所在位置:IT猫扑网 > 数据库 > MSSQL > 逐步讲解向Access数据库上传且显示图片

逐步讲解向Access数据库上传且显示图片

时间:2015-06-28 00:00 来源:IT猫扑网|http://www.itmop.com/ 作者:网管联盟 我要评论(0)

本文从多个角度来讲解如何在access数据库上如何上传并且显示上所上传图片。

在动态网站制做过程中,需要上传图片、显示图片,上传的图片要能够保存在数据库中,一般小型网站只支持Access数据库,如何上传图片,将其保存在数据库中并将其显示出来,是数据库+ASP应用技术之一。许多书籍只介绍了SQL数据库的方法,而对Access却很少提及。网上有不少关于Access数据库上传图片、显示图片的文章,多数文章介绍的不够全面,有些程序根本就不能开通,对于初学者来说很难把握,我通过参考一些文章,向初学者提供一套比较完整的程序,较全面地介绍了利用上传向Access数据库添加图片、显示图片,希望我们这些初学的同志少走一些弯路。

第一步、要制做一个Access数据库,我们给它起名字叫images.mdb,该数据库里有两个字段:id、img,id字段的类型设为自动编号,img字段的类型设为OLE对象。

第二步、设计一个上传的表单,根据要求可简可繁。

第三步、设计后台的图片处理程序,可分为图片上传保存程序和图片读取程序。

第四步、图片显示。

下面给出程序并分别做介绍。

一、 表单程序updata.html

它的功能是为上传提供一个界面,表单的enctype属性为multipart/form-data,它是设置表单的MIME编码的,只有使用了它才能完整地传送文件的数据。

以下为引用的内容:

<html>

<body>

<center>

<form name=&mainForm& enctype=&multipart/form-data&

action=&process.asp& method=&post&>

<input type=file name=mefile>

<input type=submit name=ok value=&上传&>

</form>

</center>

</body>

</html>

二、 图片的上传与保存程序process.asp

以下为引用的内容:

<%

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.Open &Provider=Microsoft.Jet.OLEDB.4.0;
Data Source=& & server.MapPath(&images.mdb&)

set rec=server.createobject(&ADODB.recordset&)

rec.Open &SELECT * FROM images where id is null&,connGraph,1,3

rec.addnew

rec(&img&).appendchunk mydata

rec.update

rec.closes

set rec=nothing

set connGraph=nothing %>

这段程序的功能是将上传图片的数据保存到数据库里。下面分句说明各语句的作用。

以下为引用的内容:

response.buffer=true

formsize=request.totalbytes

formdata=request.binaryread(formsize)

打开缓存功能,获取客户端总的发送数据量,获取上传过来的数据。

以下为引用的内容:

bncrlf=chrB(13) & chrB(10)

divider=leftB(formdata,clng(instrb(formdata,bncrlf))-1)


这两个语句的意思是设一个二进制回车符及得到一个divider分隔符,目的是为了确定图片的位置。

以下为引用的内容:

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.Open &Provider=Microsoft.Jet.OLEDB.4.0;
Data Source=& & server.MapPath(&images.mdb&)

创建connection对象,并连接Microsoft Access数据库。

以下为引用的内容:

set rec=server.createobject(&ADODB.recordset&)

rec.Open &SELECT * FROM images where id is null&,connGraph,1,3

rec.addnew

rec(&img&).appendchunk mydata

创建recordset对象,打开数据库并置为写入状态,执行rec.addnew增加一条新记录,调用FIELD对象的appendchunk方法将图片数据保存到数据库表的字段中。

后边几句关闭数据库,释放定义组件的设置。

三、 图片的读取程序showing.asp

以下为引用的内容:

<%

set connGraph=server

关键词标签:显示,图片,上传,数据库

相关阅读 sql server系统表损坏的解决方法 SQL Server asp.net 数据提供程序连接池 SqlServer2005对现有数据进行分区具体步骤 一个Access数据库数据传递的实例方法 为导入文件加上时间戳标记的两种方法 SQL Server 2005 在不允许远程连接的情况下的破解

文章评论
发表评论

热门文章 sql server系统表损坏的解决方法 sql server系统表损坏的解决方法 SqlServer2005对现有数据进行分区具体步骤 SqlServer2005对现有数据进行分区具体步骤 解决SQL Server中Group无法实现的问题 解决SQL Server中Group无法实现的问题 SQL Server 2005降级到2000的正确操作步骤 SQL Server 2005降级到2000的正确操作步骤 手把手教你学会SQL Server镜像操作 手把手教你学会SQL Server镜像操作 实战手记:让百万级数据瞬间导入SQL Server 实战手记:让百万级数据瞬间导入SQL Server

相关下载

人气排行 配置和注册ODBC数据源-odbc数据源配置教程 如何远程备份(还原)SQL2000数据库 SQL2000数据库远程导入(导出)数据 SQL2000和SQL2005数据库服务端口查看或修改 修改Sql Server唯一约束教程 SQL Server 2005降级到2000的正确操作步骤 sql server系统表损坏的解决方法 浅谈JSP JDBC来连接SQL Server 2005的方法 SQL Server创建表语句介绍 MS-SQL2005服务器登录名、角色、数据库用户、角色、架构的关系 如何使用SQL Server中的客户端配置工具 SQL Server 分布式查询:OLE DB连接(一)