引用I社区原文:
从资料上看,access中的ole对象字段实际上是jet引擎中的long binary field(长二进制字段),跟sql server中的binary字段一个意思。所以在其中保存的是二进制数据。这从这个语句中也可以看出:MsgBox TypeName(rs.field(Ole字段名).value)返回的是“Byte()”。
Ole控件的使用原理。经过仔细的观察,以及对对象嵌入概念的理解,当ole控件绑定到一个data控件上时,它是这么进行处理的:它首先把access中的ole对象存到windows的temp目录下,然后再把这个对象(文件)加载到ole控件中。
通过以上知识的学习,我觉得可以这样使用ole对象字段。
首先,ole对象字段内容的添加。不应该在access界面下进行,而是使用appendchunk方法。
其次,ole对象字段内容的读取。应该使用getchunk方法读出该字段,然后把读出的内容存为文件,再根据文件类型或使用相应的控件,或使用ole控件来读。不过,我倒不太赞成用ole控件。我觉得一般来说,同一ole对象字段保存的应该是同类型文件吧,这样,用相应的控件更好。
一家之言,欢迎指正。