把图片存入数据库(数据库中怎么添加图片)

大家好,我们继续讲解VBA数据库解决方案,今日讲解第43讲内容:如何向数据库中增加图片。这讲的内容我们要把图片存储入数据库中,把图片作为数据来处理。这讲的内容非常适合人事管理及一些图片必要管理的场合。

我们看下面的数据库:

现在我们要把备注单元格中作为图片管理,也就是说要把和对应员工编号的必要的图片放在F列的'备注'字段中,这个时候该如何处理呢?

我们先打开我们的数据库:

修改备注的字段为对象链接和嵌入对象,这时我们将利用图片的控件来装载图片。看下面我给出的代码:

Sub mynzRecords_43()'第43讲将图片添加到数据库中的方案

Dim abytPic()作为字节

Dim strPicPath,strPicName,strFldPath作为字符串

Dim strPath,strTable,strSQL,strMsg作为字符串

罗姆克纳多作为对象

Set cnADO=CreateObject('ADODB .连接)

Set rsADO=CreateObject('ADODB .记录集)

strPath=ThisWorkbook .路径\mydata2.accdb '

strTable='员工记录'

应用程序。文件对话框(msoFileDialogFolderPicker)。AllowMultiSelect=False。Title='选择图片文件夹位置'InitialFileName=ThisWorkbook .路径' \ 'AllowMultiSelect=False。显示

如果。选择编辑项目。计数=0,则退出潜水艇

strFldPath=.SelectedItems(1)”\ ”

以…结尾

cnADO .”开放”提供商=微软.王牌。OLEDB.12.0数据源=' strPath

strSQL='SELECT * FROM ' strTable

rsADO .打开strSQL,cnADO,1,3

一直到rsADO .文件结束

strPicName=rsADO(0)

strPicPath=Dir(strFldPath strPicName '*')

如果Len(strPicPath)为0,则

strPicPath=strFldPath strPicPath

intFn=FreeFile

将二进制文件的strPicPath作为#intFn打开

ReDim abytPic(LOF(intFn) – 1)

Get #intFn,abytPic

关闭#intFn

rsADO('备注)=abytPic

rsADO .更新

PicSum=PicSum 1

如果…就会结束

rsADO .下一步

' MsgBox '共有' PicSum '张照片存入数据库'

rsADO .关闭

cnADO .关闭

设置rsADO=无

设置cnADO=无

末端接头

代码截图:

代码讲解:

一带应用程序。文件对话框(msoFileDialogFolderPicker)。AllowMultiSelect=False。Title='选择图片文件夹位置'InitialFileName=ThisWorkbook .路径' \ 'AllowMultiSelect=False。显示

如果。选择编辑项目。计数=0,则退出潜水艇

strFldPath=.SelectedItems(1)”\ ”

以…结尾

上述代码获得要加入数据库的图片的路径。

2 Do直到rsADO .文件结束

strPicName=rsADO(0)

strPicPath=Dir(strFldPath strPicName '*')

如果Len(strPicPath)为0,则

strPicPath=strFldPath strPicPath

intFn=FreeFile

将二进制文件的strPicPath作为#intFn打开

ReDim abytPic(LOF(intFn) – 1)

Get #intFn,abytPic

关闭#intFn

rsADO('备注)=abytPic

rsADO .更新

PicSum=PicSum 1

如果…就会结束

rsADO .下一步

打开数据库后,我们要往里面加入图片内容,用的仍是rsADO .更新方法,有了《VBA代码解决方案》 中有关打开二进制文件的知识和动态数组的知识,这些代码不是很困难了。图片是作为一个数组放在数据库中的。

下面我们看程序的运行:

会首先提示你选择图片所在的位置:

最后提示我们图片已经放到数据库中了。

今日内容回向:

一图片是如何放到数据库中的?

2是否理解动态数组呢?

其他教程

作文语言美化。人物文化元素+人物命运,打造高分作文语言。

2023-1-14 7:24:52

其他教程

一顿操作猛如虎下一句什么来着(一顿操作猛如虎)

2023-1-14 7:29:10

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索