vb中 图片文件和声音文件不能直接写入数据库,需要将其转化成二进制文件,怎么转化成二进制文件呢?这里就用到了ADODB的Stream对象,这个对象与RecordSet对象有许多类似之处(比如都可以作为一个临时容器盛放数据,但Stream对象盛放的是二进制格式的);二者之间也有非常密切的关系(RecordSet对象许借助Stream对象写入二进制格式的文件)。当然直接将大量的图片和声音这种比较庞大的数据放入数据库会大大影响运行速率,但在初学阶段做一尝试也是很有意思的。下面就是一些简单的代码,实现对于指定的图片文件向数据库中添加、读取、删除的操作。
'此函数实现保存文件到数据库中。分两步完成,
'第一步:先加载指定图片文件以二进制的形式存到Stream对象中;
'第二步:将Stream中的二进制数据写到数据库的一个表中。
'这里的Stream对象起到了一个转化和缓存的作用
Sub s_SaveFile()
Dim iStm As ADODB.Stream
Dim iRe As ADODB.Recordset
Dim iConcstr As String
'实例化Stream对象
Set iStm = New ADODB.Stream
'读取文件到内容
With iStm
'设置数据流为:二进制模式
.Type = adTy