VB存取BLOB数据的方法及应用

来源 :中国教育信息化·高教职教 | 被引量 : 0次 | 上传用户:hujunmin18
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘 要:本文介绍了在VB中利用ADO的AppendChunk方法在数据库中存取BLOB数据的具体方法,并给出实现图像存取显示的完整工作过程,为多媒体信息管理系统的开发提供了有效的解决方案。
  关键词:VB 数据库 ADO BLOB图像存取
  中图分类号:TP311.134.3 文献标识码:B 文章编号:1673-8454(2009)01-0082-05
  
  一、引言
  
  在使用数据库的过程中,除了保存大量的文字信息以外,我们经常要存储一些较大的二进制数据对象,像图形、长文本、多媒体(视频、音频文件)等,例如:一个学生管理系统就需要对每个人的照片进行保存,以便对每个人的信息进行处理。这些数据被称之为二进制大对象BLOB(Binary Large Object),亦称为大对象类型数据。[1]二进制大对象、OLE对象可以通过BLOB类型存入数据库,如果文本对象过大,超出了文本类型的规定长度,则必须用BLOB字段进行存储。[2] 将BLOB数据存储在数据库的相应字段中,其存取的方式与普通数据有所区别。我们在经常使用的编程环境中并不能直接支持BLOB字段,因此需要调用相应的函数完成BLOB数据的使用。本文介绍在VB中,如何通过ADO的AppendChunk方法,将BLOB数据的写入操作。
  
  二、二进制大对象的存取方法
  
  可以使用ADO中的AppendChunk方法来存取BLOB数据。AppendChunk包含在Field对象中,语法如下:[3]
  ADO对象.Recordset.Fields(字段). AppendChunkData
  其中,参数Data包含追加到数据库中的BLOB数据。
  通常的处理步骤如下:
  (1)用二进制方式打开BLOB数据文件;
  (2)定义一个字节类型的数组,数组大小为文件长度;
  (3)将文件保存到数组;
  (4)使用ADO对象的AppendChunk方法写入数据库。
  
  三、二进制大对象处理方法的具体实现
  
  在得到图片数据并将其保存到数据库中时,要使用ADO的AppendChunk方法。[4]程序界面如图1所示,单击“图片输入”按钮,打开通用对话框,选择指定的图形文件到数据库;在浏览记录时可以显示图片;单击“图片删除”按钮,删除已加载的图片。
  
  接着,在VB中创建一个工程,在form1窗体上添加ADO控件、命令按钮、图像控件、通用对话框、文本框和标签控件。将Adodc1控件连接到数据库Student.mdb,指定记录源为“jbqk”表。
  所用的控件及属性设置见表2。
  
  具体的窗口代码如下:
  (1)为数据库添加图片
   Private Sub Command1_Click()
  Dim a()As Byte ′定义一个动态数组为字节类型
  CommonDialog1.ShowOpen ′显示打开对话框
  Open CommonDialog1.FileName For Binary As #1′以二进制读方式打开源文件
  fl = LOF(1)′获得文件长度
  ReDim a(fl)′设置数组大小为文件长度
  Get #1, , a ′读文件到数组中
  Adodc1.Recordset.Fields("照片").AppendChunka
  Close #1
  Image1.Picture = LoadPicture(CommonDialog1.FileName)′更新Image1内的图形
  End Sub
  (2)数据库中图片数据的删除
  Private Sub Command 2_Click()’单击命令按钮2实现数据库中图片的删除
  Adodc1.Recordset.Fields("照片").AppendChunk""
  Adodc1.Recordset.Update
  Image1.Picture = LoadPicture("")
  End Sub
  
  四、结束语
  
  Visual Basic 6.0为存取BLOB数据提供了灵活的接口。本文所阐述的方法不但适用于图像文件,同样适用于其它类型的文件。数据库中BLOB数据的处理方法很多,不同的程序设计语言针对不同的DBMS,其处理方法都有差异。图片的出现为Visual Basic程序增添了美丽的情调,使程序更富魅力、更具专业。
  
  参考文献:
  [1]魏文胜.在VB中存取SQL Server 2000二进制数据的方法[J].电脑知识与技术(学术交流),2006(20):42-43.
  [2]龚沛曾,杨志强,陆慰民. Visual Basic程序设计教程(第三版)[M].北京:高等教育出版社,2007.
  [3]郑阿奇.Visual Basic实用教程(第二版)[M].北京:电子工业出版社,2003.
  [4]余璆. VB对底层访问的典型例子[J].计算机应用与软件; 2004(11):115-117.
其他文献
日前,2009全国高职高专计算机系主任年会在长春举行,会议由教育部高等学校高职高专计算机类专业教学指导委员会主办,以“推动校企合作,加强专业建设,深化课程改革”为主题,探讨如何构建IT职业教育的新模式。本刊记者就此采访了教育部高职高专计算机类专业教学指导委员会秘书长、大连东软信息技术职业学院品牌与战略发展部部长吴建宁老师,以及英特尔企业解决方案部教育行业中国大区经理贾晓明先生。  大连东软信息技术
我国幼儿园园本课程广泛兴起于本世纪初,特别是2003年幼儿园园本教研制度建设项目的推进之后,越来越多的幼儿园开始建构自己的园本课程。一些地方教育部门还将园本课程建设纳入对幼儿园考核评估和园长个人资格晋升评定的内容中。2015年颁布的《幼儿园园长专业标准》要求园长把文化育人作为办园的重要内容和途径,强调园长要重视利用自然环境和社会(社区)资源,丰富幼儿园教育活动。于是,近年来,深入挖掘利用自然资源和
9月19日,中国自主云计算服务提供商——曙光公司在北京发布云计算策略,曙光公司云计算新格局完整浮出水面。北京、成都、无锡、重庆、哈尔滨等城市的政府重要领导,国家开发银行、中国科学院等相关部门领导,云计算产业链合作伙伴以及各行业云计算用户出席了此次发布会,共同见证曙光公司云计算战略及产品发布,与曙光公司一同启动中国“云”动力。  独特应用模式:“城市云”   曙光公司借助近几年来在“城市云计算中心”
摘 要:以全国多媒体课件大赛二等奖课件“跨文化交际”为例,从心理学角度总结了Flash课件开发的六大原则,即设计阶段主要遵循统一性原则、模块化原则、文本图示化—图片动态化原则及放大有效区域原则,制作阶段主要遵循分散—聚合原则和“登门槛”原则。  关键词:Flash课件;心理学;课件设计;课件制作;原则;“跨文化交际”  中图分类号:TP311.56文献标识码:B文章编号:1673-8454(2
3月1日,锐捷网络网络出口产品线增添新成员——PowerCache内容加速系统。该系统能将外网热点资源自动缓存在本地,供用户直接从内网下载。PowerCache给用户带去了体验与成本的双丰收——内网用户访问已缓存资源,速度可以高达10MB/S,节省出口带宽20%~50%。  随着业务应用及用户上网习惯的发展,用户对于在线视频、下载等体验的要求越来越高。传统网络中,大部分局域网都有流控产品将用户的网
摘要:清华大学服务于校级统一信息建设的版本管理系统,以开源工具为基础,实现了对软件系统研发版本的有效管理。版本管理系统采用先进的subvcr$1013版本管理为基础平台,创新性地以基线加更新文件的版本管理模式,实现了清晰的更新管理、精确的版本定义和高效的自动编译,同时支持多分支并行开发,解决了清华大学在消除信息孤岛,建设校级统一信息系统的过程中,软件系统更新频繁、开发部署时间短、多系统并行开发整合
学生评价是新课程改革中的一个重点和难点问题。虽然自20世纪80年代以来,我国基础教育在学生评价方面也进行了一系列改革与尝试,但是并没有对评价中存在的主要问题产生根本性改变。这些主要问题表现为:评价内容偏重学科知识,评价标准过多强调共性,评价方法主要是传统考试,评价主体以教师为主,评价重心过于关注结果。  这些问题与当前教育评价发展的特点不相符,阻碍了基础教育课程改革的推进,也不利于促进学生全面发展
拼插各种各样的枪  ——发现男孩子拼插枪的兴趣  活动区,几个男孩子用摩尔纷、创意积木等玩具拼出了枪的造型,他们兴奋地介绍自己的枪,有冲锋枪、狙击步枪、散弹枪……越来越多的小朋友参与到拼枪、讨论枪的功能的活动中来,一天、两天……  从孩子们拼插中专注的神情,讨论中兴奋的表情,我们看出了他们对枪的痴迷。为了丰富和拓展孩子们的拼插经验,我们共同收集了枪的模型、图片、图书,还开办了枪展。  室内作战游戏
HP发布业界首款超高密度刀片服务器    6月24日,HP公司发布了业内首款超高密度的刀片服务器HP ProLiant BL2x220c G5,其独创的领先技术将大幅提升数据中心高性能计算速度,进一步减少机房占用率,更大程度降低能耗。  基于Intel至强处理器的HP ProLiant BL2x220c G5是业内首个把两台独立的服务器结合在一个刀片中的刀片服务器。该产品将帮助向外扩展客户降低数据
《国家中长期教育改革和发展规划纲要(2010-2020年)》提出“加快教育信息化进程”的总体部署,今年3月,教育部颁布了《教育信息化十年发展规划(2011-2020年)》,提出了未来十年我国教育信息化发展“三基本两显著”的总体目标。为落实这两个重要文件及《广东省教育信息化发展“十二五”规划》文件精神,广东科技学院引进“世界大学城”云空间建设项目,按照整体规划、分步实施、共建共享、边建边用的原则,努