为什么.mdb的大小会随着小图像增长三倍?

mat*_*ewM 5 ms-access image ms-access-2010

我在Access 2010中制作了几个表单,并在标题表单中添加了公司徽标.这张照片是.jpg,大小是70KB.我不知道为什么.mdb的大小会立即从4MB增加到12MB?(几种形式和相同的标志)也许有一些图像压缩选项?

Eas*_*ter 5

取自http://office.microsoft.com/en-us/access-help/store-images-in-a-database-HP005280225.aspx

...“但是,嵌入图像会迅速增加数据库的大小并导致其运行缓慢。如果您存储 GIF 和 JPEG 文件,情况尤其如此,因为 OLE 会创建包含每个图像显示信息的附加位图文件文件,这些附加文件可能比原始图像大。另外,此方法仅支持 Windows 位图 (.bmp) 和设备无关位图 (.dib) 图形文件格式。如果要显示其他常见类型的图像文件,例如 GIF 和 JPEG 图像,您必须安装其他软件。”...

为了解释这些位图文件是如何存储的,下面的链接提供了比微软网站更多的解释:

取自http://www.ammara.com/support/kb/showkbe5cc.html

...“OLE 链接和嵌入是 Microsoft Access 用于将“对象”存储在数据库表中的一种技术。该技术依赖于相关联的外部应用程序来存储、呈现和编辑数据。在某些情况下,附加未压缩的“预览”图像也保存在表中(即使在链接时)。此预览图像用于更快地显示数据,或者当服务器应用程序不可用时。这可能会导致大量开销。如果您存储 jpeg 图像,未压缩的预览可能是实际图像大小的十到二十倍,从而导致数据库的大小激增。”...

因此,当您将图像拖放到 MS Access 中的表单上时,未压缩的图像数据将保存到系统表中。这是实际未压缩的表数据,因此压缩和修复可能没什么帮助。

常见的解决方法似乎是将图像路径存储在数据库表中,并使用该路径调用表单上的图像。