mysql中如何处理照片数据_数据库与照片/图片/文件的关系如何处理

本文介绍了在数据库中处理照片数据的五种方法,包括将照片作为BMP存储在数据库中、使用OLE字段、以二进制方式存储、仅保存路径以及使用ACCESS 2007的附件字段。每种方法都有其优缺点,例如存储体积、显示便利性和文件格式支持等。
摘要由CSDN通过智能技术生成

问题:

数据库与照片/图片/文件的关系如何处理? 也就是,比如有照片若干,怎样能在数据库中存储并显示?

方法一:

把照片放进数据库,照片的格式最好是bmp,这样就可以在窗体上显示出来,不过这样数据库的体积会暴增。 详细的使用方法请参考Access帮助中的 PictureData 属性(本文末尾有相关帮助)。 而且,你可以直接用 commdlg API 函数来给图像框赋值,然后直接读取某个图像框的 PICTUREDATA 并存储到某个 IMAGE 字段中。这样做的优点是显示、读取方便,缺点是如果图片精度高,占用的硬盘空间会爆大。 详细示例请参考: http://access911.net/down/eg/OLEfieldAndPictureData.rar (46KB)

方法二:

设一个OLE字段,然后插入对象就行了(对着字段单击右键)。但是要注意的是,用上述方法加入数据库的图片只能以手动方式保存,需要用程序读取的时候会碰到存储在ole字段中二进制数据与源文件不符的情况。主要是因为ole引擎在图片的前面加了一段信息给他自己用。 请参考: http://access911.net/index.asp?board=4&mode=3&recordid=75FAB21E12DC

方法三:

将图片文件以二进制方式存储在数据库中,使用时调用。详细情况请参考:

下列例程就是采用这种方法,在显示的时候把长二进制数据保存为临时文件用于显示 http://access911.net/down/photo.rar (size=308K)

方法四:

不把照片放入数据库,只把照片的路径保存到数据库中,动态加载,这样可以支持很多种图片格式。作法是在窗体上放一个图像控件,然后根据员工编号或别的有关联的字段去找出路径,用以下语句来加载图像: 图像1.Picture =路径名 路径名必须包括图象文件名。 详细情况你可以参考 access xp 的示例 northwind.mdb 中的雇员窗体 你也可以参考:http://access911.net/down/eg/LinkPicture.rar (61.1KB)

方法五:

在 ACCESS 2007 文件格式中,可以直接将图片存储到“附件”的字段中。 附件类型与OLE类型的主要几个区别是: “附件”字段不用创建原始文件的位图图像; 附件支持自动压缩一些格式的文件; 不是所有文件都能存储到附件字段中,比如EXE就不行。 操作方法除了手动,可以用 DAO的Recordset.Fields("FileData").LoadFromFile() SaveToFile 来实现。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值