blob对象转blob地址_BLOB(不是电影!)

blob对象转blob地址

在TheScripts此处提出的所有问题中,出现频率最高的一个问题与Access中图形图像的存储有关。 基本上有三种可用于在Access中操作图像文件的技术,它们是:

  1. 将图像存储在OLE对象字段中,并将其显示在绑定对象框中。 图像可以链接或嵌入。
  2. 将图像的路径存储在文本字段中,并使用图像控件动态显示它。
  3. 将图像存储为OLE字段中的二进制大对象(BLOB),在需要时提取图像,然后使用图像控件显示图像。
第一种技术最有问题,主要是因为服务器错误(启动应用程序以显示图像)和可怕的数据库膨胀(由于Access内部存储图像的方式)。

第二种方法虽然相对容易实现,但也有其自身的内在问题。 连续表单不能使用此技术,并且严格要求UNC路径。 如果移动图像,如果它们位于服务器上并且不共享包含它们的文件夹,如果服务器已关闭,如果您没有对PC的读取权限,我想您就可以了。

归根结底,第三种技术很快成为图像存储的明显选择。 将图片作为BLOB存储在数据库中是包含图像数据的最有效方法,因为图片数据是逐字节存储(精确大小)的,而图片则反映了它们的真实大小。

当BLOB与其他数据一起存储在数据库中时,BLOB和表格式数据将一起备份和恢复并同步,因此没有文件路径可争,也不会导致数据库膨胀。 因为INSERT,UPDATE和DELETE操作在同一事务中发生,所以可以确保数据的一致性。 由于BLOB和常规数据共存,因此无需创建单独的安全措施。

实现BLOB技术的最低要求是两个功能,一个是将文件放入数据库,另一个是将文件取出。 您可以使用DAO或ADO来抓取图像文件并将其读入OLE字段(第一个功能)。 要显示图像,我们必须将其从数据库(第二功能)中提取到临时文件中,然后通过将控件的Picture属性设置为临时文件的路径,使用图像控件来显示它。

本技巧中出现的某些主题以及演示数据库中存在的代码均来自Alan Warren的网站。 我认为他为该主题提供了很好的见解,而他的代码为如何实现此功能提供了一个很好的例子。 我更改了数据库的整个主题,更改了表的结构,更改了表格的外观,还添加,删除和修改了沃伦先生的代码。 关键代码部分基本上保持不变。

必填参考:

Microsoft脚本运行时

Microsoft ActiveX数据对象XX库

翻译自: https://bytes.com/topic/access/insights/755513-blob-not-movie

blob对象转blob地址

你可能感兴趣的:(数据库,java,python,mysql,大数据)