1、用VB6.0Data控件存取数据库图片新方法 摘要: 介绍了VB6中Data控件建立数据库方法以及怎样使用独特方法实现对图像数据显示和查询。 关键词: Data控件; 数据库; 图像数据 1 建立Access关系型数据库: 伴随计算机技术发展, 数据库越来越显示出其强大数据存放和数据管理功效。为了满足大家对数据库需要, Visual Basic提供了强大数据库程序设计功效。即使VB并不是专用与数据库开发软件系统, 但它所提供数据库功效却几乎能够满足全部编程人员需求。在Visual Basic环境下, Access数据库是缺省数据库, Access所采取Jet数据库
2、引擎得到了最有效利用。比如Visual Basic内部数据访问控件(Data)就是建立在Jet引擎基础上。 数据库是一组特定数据集合, 是提供数据基地。它能保留数据并许可用户访问所需数据。数据库保留数据都是相关数据, 为了便于保管和处理这些数据, 将这些数据存入数据库时必需含有一定数据结构和文件组织方法。数据库中数据集合组成特定表, 表中每一列为一个字段, 每一行为一个统计。其中表是按行与列排列来表示相关信息逻辑组。 Jet数据库引擎包含在一组动态链接库(DLL)中, 运行时, 这些动态链接库文件被链接到Visual Basic程序。它把应用程序请求翻译成对.mdb文件或其她数据库物理操作
3、数据库引擎真正读取、 写入和修改数据库, 并处理数据库中全部内部事物。 在Access数据库系统中, 信息以数据库为单位存放到存放介质如磁盘、 光盘中。其扩展名为mdb。 2 Data控件 2.1 Data控件内涵 Data控件是Visual Basic和数据库之间联接桥梁。经过Data控件能够不用编写代码而创建简单数据库, 存取数据。另外, 也可把Data控件和Visual Basic代码结合起来创建完整功效应用程序, 为数据处理提供高级编程控制。在不用代码情况下Data控件能够完成下列任务(1)与当地或远程数据库连接(2)打开指定数据库表或定义统计集。(3)传送数据字段到多种
4、数据绑定控件, 并可在其中显示或改变数据字段值。(4)经过数据绑定控件来添加新统计或更新数据库(5)捕捉访问数据时出现错误(6)关闭数据库 要使用Data控件, 最少得设置DatabaseName属性和RecoredSource属性。一旦设置了DatabaseName属性, Visual Basic将检索数据库里全部表和有效查询名称, 并依据DatabaseName把它们显示在一个下拉列表里。若想打开外部数据库, 还必需在“属性”窗口设置Connect属性。DatabaseName属性用于返回或设置Data控件数据源名称及位置, 指定所要用数据库。RecoredSource属性用于指定控件能
5、看到数据库部分, 即指定经过窗体上被绑定控件所访问统计起源。只有在设置了DatabaseName属性后才能设置RecoredSource属性。当在运行时改变RecoredSource属性值, 必需使用Refresh方法使改变生效, 并重建Recoredset。 2.2 数据绑定控件 数据绑定控件是用于访问数据库信息数据识别控件。当创建一个Data控件后, 经过设定对应属性, 把数据绑定控件与Data控件联络起来, 就能够在数据绑定控件中显示数据库中对应统计字段值, 同时还可对这些数值进行更改。在绑定控件里改变数据, 当移动另一个统计时, 这些改变会自动地写入到数据库中。 2.3 数据
6、绑定控件属性 1. DataField属性用于指定Data控件所建立统计集里字段名称 2. DataSource属性用于指定Data控件所要绑定数据控件, 经过这个控件将目前控件连接到数据库上。该属性在运行时不可用。假如要在运行时将一个控件连结到数据库中某个字段上, 必需在设计时用DataSource属性指定一个Data控件。 2.4 添加数据绑定控件 要在窗体中添加数据绑定控件, 首先应在窗体中创建绑定控件,然后设置该控件DataSource属性和DataField属性,指定要绑定Data控件和统计集里有效字段。 假如设计时数据库可用, 则有效字段列表将显示在“属性”窗口里“Da
7、taField属性设置”框中。假如在设计时数据库不可用, 则在数据值从数据库中发送给控件之前, 需在运行时提供一个有效字段名称。 3 应用实例 笔者使用Data控件及数据绑定控件创建一个学生档案数据库查询系统。首先在VB6经过外接程序将其调用Access, 创建一个学生档案数据库及学生档案数据表。不过这里需要提醒是“PictureBox”和“ImageList”都不能接收来自“Data”控件信息, 所以可在图片框内部放置一个不可见不过有效“Label”控件, 让其接收文本类型路径信息: 待用“Loadpicture()”函数装载图像时, 参数用“LabelX.Caption”替换即可。其
8、步骤以下: 3.1 创建数据库及空数据表 1. 开启VB6, 直接进入VB6开发界面, 在主界面添加Text1~Text5, label1~label6, image1, command1~command4, Data1, 见图3. 2. 调用外接程序,因为Visual Data Manager并非VB6标准组员, 必需经过外接程序将其调用。开启Visual Data Manager。 3. 单击Visual Data Manager“文件”菜单, 选择“文件®新建®Microsoft Access® “Version 7.0 mdb”菜单项, 创建一个Access数据库。 4
9、 在随即弹出“保留”对话框中, 为刚刚创建数据库取名为Student, 此时创建仅仅是一个空数据库, 还要在其中加入数据表, 并在表中添加所需字段完成创建空数据表工作。右击“数据库窗口”, 在弹出快捷菜单中选择“新建表”项, 开启“表结构”窗口, 进行数据表创建工作。并在窗口上方“表名称”栏中为该表取名StudentList, 单击“添加字段”按钮, 为该表添加所需字段才能完成创建空数据表工作。依据系统设计要求, 在表中添加“姓名”、 “电话”、 “手机”、 “传呼”、 “地址”、 “图像路径”六个字段, 依次选择数据类型是字符型、 整型、 字符型、 字符型、 字符型、 字符型。 5. 完
10、成字段添加工作后, 单击“生成表”按钮, Visual Data Manager弹出对话框是否要为这个数据库创建一个关键字段, 因为关键字段只有在多个数据表情况下会发挥作用, 所以选择“否”。 6. 数据库及其空数据表创建工作完成, 回到“数据库窗口”,能够发觉数据库属性下方多了一个名为“StudentList”数据库表。 7. 在数据表中填写数据 右击“数据库窗口”中“StudentList”数据表, 在弹出快捷菜单中选择“打开”选项, 将刚刚创建空数据表打开, 此时数据表是空, 单击目前窗口中“添加”菜单, 开启添加数据窗口, 根据事先设计数据类型, 在该窗口依次添加第一个学生“姓名
11、 “电话”, “手机”, “传呼”, “地址”, “图像路径”等选项, 添加完成, 单击“刷新”按钮, 则第一个学生各项信息被综合成一个统计, 添加到“StudentList”数据库表当中。反复上述步骤, 依次将要建立学生档案资料添加到StudentList数据库表当中。见图1。 图1 StudentList数据表 3.2 创建数据库程序基础框架 Data控件根据用户提交要求, 经过Microsoft Jet数据引擎从“StudentList”数据库中提取对应数据统计, 这一统计不一样字段传送给了不一样数据绑定控件。文本框类数据绑定控件显示是文件“姓名”, “电
12、话”等文本信息, “Data”控件传送过来字段也恰好是文本类型, 只需简单传送即可; 而“图片框”显示是图像数据本身, 所以在“Data” 控件将一个包含文件路径信息字段传输过来后, 必需使用一个LoadPicture()函数将对应图像显示出来。其步骤框架见图2。 图2 程序步骤框架 1. 设置各个基础控件外观属性 Data控件: 设置DataSource属性选项, 设置为Student; 设置RecorderSource为StudentList. ‚单击Form1窗口中Text1控件, 在属性窗口找到其“Dat
13、aSource属性选项”, 设置为Data1控件, 表示该控件数据是经过“Data1” 控件从Student数据库中取得, 继续找到该控件“DataField”属性选项, 设置为“姓名”, 表示该控件仅显示被选中统计“姓名”字段。用一样方法对Text2控件~Text5控件进行绑定。 2. 选中添加在Image1控件内部Label6控件, 在“Visible”项属性中将其设置成不可见, 经过“Data”控件与“StudentList”数据库表中“图像路径”字段对它进行绑定。同时, 将装载该控件“Image1”“Stretch”项属性设置为“True” 。 编写代码来实现图像显示: Private Sub Data1_Validate(Action As Integer, Save As Integer) strtemp = label5.Caption Image1.Picture = Laodpicture(strtemp) End Sub 图3程序开发界面 图4 学生档案界面 程序运行结果如图4。 4 结束语 在建立数据库时, 常常需要显示与数据相关图像信息, 但编程者常常使用非常复杂方法, 笔者在这里介绍方法简练而明了, 仅仅做到抛砖引玉作用。






