图片数据库管理系统.docx
- 文档编号:8466231
- 上传时间:2023-01-31
- 格式:DOCX
- 页数:19
- 大小:373.09KB
图片数据库管理系统.docx
《图片数据库管理系统.docx》由会员分享,可在线阅读,更多相关《图片数据库管理系统.docx(19页珍藏版)》请在冰豆网上搜索。
图片数据库管理系统
摘要
随着计算机及网络技术的不断发展,图片资源采用先进的数据库技术进行整理、保存和检索,并利用便捷的网络技术进行发布和传播成为其在教学和研究应用方面的主流趋势。
本文通过开发一个小型软件图片数据库管理系统,实现了VisualBasic6.0和Access数据库的DAO连接,实现了简单的数据库编程。
本系统使用VB的DAO技术(DataAccessObject)实现数据库的连接与管理,以此来管理图片。
论文主要部分分为六部分。
第一章和第二章介绍了设计思想和设计工具的简介;第三章确定系统的需求分析;第四章总体设计系统;第五章详细设计和编码;第六章总结设计的结果,指出优点和不足。
对本次开发作一总结。
本软件通过数据库管理图片,将图片压缩存储在数据库中。
通过使用本程序,可以方便的查询、添加、删除图片,实现方便、快捷、合理的管理图片。
关键词:
管理图片、管理系统、DAO、VisualBasic6.0
Abstract
Alongwithfastthedevelopmentofcomputerandtheinternet,thesourceofthepicturesusestheadvancedDatabasetechnologytoedit、saveandsearchpictures,andusingconvenientinternet’stechnologytoannounceandtospreadismadetomajortendencyineducationandstudyfield。
ToachieveVisualBasic6.0connectingtoaccessbyDAO,wedevelopedaminisoftwarenamedPicturesDatabaseManagementSystem。
ThesystemusesDAOtechnologywhichboundwithVB,toachieveDatabase’sconnectingandmanagement,soastomanagepictures。
Thethesismakesupofsixparts。
Thefirstchapterandthesecondintroducedthedevelopmentideaanddesigningtools。
Thethirdchaptermadeananalysistothesystem’sneeds。
Theforthchapterdesignedsystemoverall。
Thefifthchaptermadeaparticulardesignandthencoded。
Thesixthchaptersummarizedthedevelopment。
ThesoftwaremanagespicturesthroughDatabase,itcompactspicturesthensavespictures。
Bythissoftwareitmakeseasytosearch、edit、deletepictures,anditmanagespicturesconvenient、fast、reasonable。
KeyWords:
managepictures,managementsystem,DAO,VisualBasic6.0。
第一章引言
随着计算机技术的迅猛发展,计算机广泛应用到各个领域以及各行各业。
图片作为细节和实景的记录载体,在反映和体现信息时有着文字不可替代的直观性、生动性和客观性,是教学和研究中不可或缺的直观形象素材,同时读图也是获取知识、启迪心智的一种重要学习方式。
图片信息资料资源在教学和研究中日益凸显其作用且愈来愈受到重视。
随着计算机及网络技术的不断发展,图片资源采用先进的数据库技术进行整理、保存和检索,并利用便捷的网络技术进行发布和传播成为其在教学和研究应用方面的主流趋势。
1.1设计思想
本软件的主要目的时方便使用者查找和存储图片,实现方便、快捷、高速的图片管理。
图片应用压缩算法压缩存储在数据库中,以此来节省磁盘空间,用户可以存储和查看图库中的图片。
方便对图片的处理和管理。
1.2开发工具以及环境
开发工具:
VISUALBASIC6.0,MICROSOFTACCESS2000,WINDOWSAPI。
VisualBasic,简称VB,是当今世界上应用最广泛的编程语言之一,它也被公认为是编程效率最高的一种编程方法。
无论是开发功能强大、性能可靠的商务软件,还是编写能处理实际问题的实用小程序,VB都是最快速、最简便的方法。
ACCESS是MICROSOFTOFFICE集成软件之一,在VB编程中通常要与数据库打交道,对于数据量较小的应用,一般选用Access作为数据库,因为Access数据库比较简单,功能也比较齐全,数据的备份、拷贝都很方便,且程序发布时不需要额外单独安装其它的数据库管理软件。
因此,在功能能够满足要求的条件下,Access数据库往往成为一些小型数据库软件的首选。
设计过程中需要调用WINDOWSAPI函数以和系统交互信息,调用系统方法。
编程环境:
windowsXP,visualstudio6.0。
第二章数据库和开发语言
2.1数据库简介
数据库是计算机应用系统中的一种专门管理数据资源的系统。
数据有多种形式,如文字、数码、符号、图形、图像以及声音等。
数据是所有计算机系统所要处理的对象。
人们所熟知的一种处理办法是制作文件,即将处理过程编成程序文件,将所涉及的数据按程序要求组织成数据文件,用程序文件来调用。
数据文件与程序文件保持着一定的对应关系。
在计算机应用迅速发展的情况下,这种文件式方法便显出不足。
比如,它使得数据通用性差,不便于移植,在不同文件中存储大量重复信息、浪费存储空间、更新不便等。
数据库系统便能解决上述问题。
数据库系统不从具体的应用程序出发,而是立足于数据本身的管理,它将所有数据保存在数据库中,进行科学的组织,并借助于数据库管理系统,以它为中介,与各种应用程序或应用系统接口,使之能方便地使用数据库中的数据。
这段说明介绍的确非常详细,不过你可能看得头晕眼花了,其实简单地说数据库就是一组经过计算机整理后的数据,存储在一个或多个文件中,而管理这个数据库的软件就称之为数据库管理系统。
一般一个数据库系统(DatabaseSystem)可分为数据库(Database)与数据管理系统(DatabaseManagementSystem,DBMS)两个部分。
本系统应用MicrosoftAccess数据库来存储图片文件,在VB中使用DAO(DataAccessObject)技术访问数据库。
2.2VB简介
MicrosoftVisualBasic,它提供了开发MicrosoftWindows(R)应用程序的最迅速、最简捷的方法。
不论是MicrosoftWindows应用程序的资深专业开发人员还是初学者,VisualBasic都为他们提供了整套工具,以方便开发应用程序。
VisualBasic?
“Visual”指的是开发图形用户界面(GUI)的方法。
不需编写大量代码去描述界面元素的外观和位置,而只要把预先建立的对象add到屏幕上的一点即可。
“Basic”指的是BASIC(BeginnersAll-PurposeSymbolitInstructionCode)语言,一种在计算技术发展历史上应用得最为广泛的语言。
VisualBasic在原有BASIC语言的基础上进一步发展,至今包含了数百条语句、函数及关键词,其中很多和WindowsGUI有直接关系。
专业人员可以用VisualBasic实现其它任何Windows编程语言的功能。
VisualBasic不仅是VisualBasic编程语言。
VisualBasic编程系统和VBA都使用这一语言。
VisualBasicScriptingEdition(VBScript)是广泛使用的脚本语言,它是VisualBasic语言的子集。
这样,在学习VisualBasic中得到的经验可应用到所有这些领域中。
从开发个人或小组使用的小工具,到大型企业应用系统,甚至通过Internet的遍及全球分布式应用程序,都可在VisualBasic提供的工具中各取所需。
从开发个人或小组使用的小工具,到大型企业应用系统,甚至通过Internet的遍及全球分布式应数据访问特性允许对包括MicrosoftSQLServer和其它企业数据库在内的大部分数据库格式建立数据库和前端应用程序,以及可调整的服务器端部件。
有了ActiveX(TM)技术就可使用其它应用程序提供的功能,例如MicrosoftWord字处理器,MicrosoftExcel电子数据表及其它Windows应用程序。
甚至可直接使用VBP或VBE创建的应用程序和对象。
Internet能力强大,使得您很容易在应用程序内通过Internet或intranet访问文档和应用程序,或者创建Internet服务器应用程序。
已完成的应用程序是使用VisualBasic虚拟机真正.exe文件,您可以自由发布。
VisualBasic有三种版本,可以满足不同的开发需要。
∙VisualBasic学习版使编程人员轻松开发Windows和WindowsNT(R)的应用程序。
该版本包括所有的内部控件以及网格、选项卡和数据绑定控件。
学习版提供的文档有LearnVBNowCD和包含全部联机文档的MicrosoftDeveloperNetworkCD。
∙专业版为专业编程人员提供了一整套功能完备的开发工具。
该版本包括学习版的全部功能以及ActiveX控件、InternetInformationServerApplicationDesigner、集成的VisualDatabaseTools和DataEnvironment、ActiveDataObjects、和DynamicHTMLPageDesigner。
专业版提供的文档有VisualStudioProfessionalFeatures手册和包含全部联机文档的MicrosoftDeveloperNetworkCD。
∙企业版使得专业编程人员能够开发功能强大的组内分布式应用程序。
该版本包括专业版的全部功能以及BackOffice工具,例如SQLServer、MicrosoftTransactionServer、InternetInformationServer、VisualSourceSafe、SNAServer,以及其他。
企业版包括的印刷文档包括VisualStudioEnterpriseFeatures手册以及包含全部联机文档的MicrosoftDeveloperNetworkCD。
VB6.0企业版的特性
应用程序性能评测器(ApplicationPerformanceExplorer)
这个工具可使您用来测试所考虑的各种企业应用程序设计方案的运行时性能和资源加载特性。
InternetInformationServer4.0
InternetInformationServer是一个为那些必须与其它BackOffice部件和应用程序进行交互的新一代WorldWideWeb应用程序而提供的平台。
MicrosoftTransactionServer2.0
MicrosoftTransactionServer(MTS)是一个基于部件的事务处理系统,可以用来开发、部署、和管理高性能的、可伸缩的、和强健的企业、Internet、和intranet服务器应用程序。
OLEDB
OLEDB是一组OLE接口,这些接口为应用程序访问保存在不同信息源的数据提供了统一的方法。
这些接口还支持大量适合于数据源的DBMS功能,使它能够共享其数据。
RemoteData控件
RemoteData控件通过使用RDO,Microsoft远程数据对象来实现数据访问。
SQL调试
T-SQL调试器允许您从VisualBasic开发环境内部交互地调试用MicrosoftSQLServer的TransactSQL特有语言编写的远程存储过程。
SQLServer6.5
MicrosoftSQLServerProgrammer'sToolkit包含了Transact-SQL、用SQL为ODBC编程、以及更多内容。
存储过程编辑器
SQL编辑器允许您从VisualBasic开发环境内部创建和编辑用SQLServer和Oracle编写的存储过程和触发器。
UserConnection设计器
这个ActiveX设计器对编程数据访问提供设计时支持。
在VisualBasic的这个版本中,此工具已经被上面列出的数据环境设计器所取代。
VisualComponentManager
这个工具可以保存、组织、并共享可重复使用的部件。
它可以包含向导、ActiveX组件、DatabaseConnection对象以及在VisualBasic工程中使用的许多其他组件。
由于它是基于开放与可伸缩的MicrosoftRepository,因此适合对整个企业范围内的部件进行编目和重复使用。
可视化数据库工具集成(查询设计器和数据库设计器)
使用这些设计器,您可以可视地创建并修改数据库结构描述和查询:
创建SQLServer和Oracle数据库表、通过拖放来创建视图、以及自动更改列的数据类型。
VisualSourceSafe
这个源-控件(source-control)工具跟踪并保存对文件的更改,使文件(例如代码模块)可以容易经济地重复使用。
第三章系统需求分析
需求分析是软件生存周期中重要的一步,只有通过软件需求分析,才能把软件功能和性能的总体概念描述为具体的软件需求规格说明,进而建立软件开发的基础。
需求分析所要做的工作是深入描述软件的功能和性能,确定软件设计的限制和软件同其它系统元素的接口细节,定义软件其它有效性需求。
本章主要阐述了该系统的需求分析、功能要求、分析建模和开发环境。
3.1需求分析
图片数据库系统是应用数据库存储管理图片,实现高效、合理、规范和方便地管理图片的功能。
本系统将实现以下需求:
1、启动系统时,系统可以自动搜索数据库并正常连接到数据库。
2、可以对数据库进行一系列操作(查询、添加、删除)。
3、可以显示图片详细信息。
4、对数据库进行压缩,以减少图片所占用的空间。
5、可以更新数据库列表。
3.2功能需求
根据以上需求分析,本系统的具体功能如下:
1、系统启动时
首先自动加载默认数据库,显示系统主窗体界面。
如果没有发现数据库则报告错误信息。
将搜索到的数据库添加到frmDB窗体中,用于选择。
2、添加图片时
单击addpictures向数据库中添加图片,此时调用另外一个添加图片窗体并连接到数据库。
在添加图片窗体中,显示和预览要添加的图片的信息,以方便向数据库中添加图片。
向数据库的添加过程中显示添加的进度,进度条显示添加的百分比和所用时间。
3、搜索图片时
本系统实现的是按图片名字搜索图片,确定是搜索全部文件夹还是当前文件夹;然后确定匹配字符串是首字符串匹配还是中间字符串匹配。
工具栏分别显示数据库的第一个图片、最后一个、前一个和下一个等快捷按钮。
4、编辑图片时
查看图片的信息,设置右键菜单对图片进行编辑处理。
显示图片信息并能对图片进行处理,使图片以最好的格式显示。
3.3开发环境
本系统使用Microsoft公司的MicrosoftVisualStudio6.0中VisualBasic作为开发工具。
采用VisualBasic语言进行程序设计。
第四章总体分析与设计
总体设计的基本目的就是回答“概括的说,系统应该如何实现?
”这个问题,因此总体设计又称为概要设计或初步设计。
通过这个阶段的工作将划分处组成系统的物理元素——程序、文件、数据库、人工过程和问题等等。
总体设计的一项重要任务是设计软件的结构。
4.1系统分析
根据前面的设计思想进行分析,按照系统开发的基本观点进行分解,从内容上可对系统作如下划分:
1.系统应建立友好的界面,既要操作简单、直观、灵活,又要易于学习掌握和操作。
2.能构正确连接数据库,并实现数据库的基本功能,如:
查询图片,显示图片信息,删除图片,添加图片,添加目录;能够按照图片名称查找并显示相关信息,能够按照图片格式(如:
gif,jpeg,bmp,ico等)进行查找和插入等操作。
3.在正确连接数据库,查询到用户相应的信息后,应在界面上显示相关的信息。
能够调用windows图片查看器显示图片,以此来对图片进行一系列的windows下的处理。
4.能够对加入数据库的图片进行压缩操作,以减少图片所占用的空间。
4.2系统流程图
本图片数据库管理系统的流程图如图2-1。
流程图简单地介绍了程序的运行过程以及主要功能。
本系统将按照流程图进行设计。
系统启动后,用户首先要添加数据库(在文件系统下搜索),然后系统自动载入图片数据库。
至此,用户就可以对图片数据库进行一系列操作了(如:
添加,删除,检索等)。
点击相应的按钮,系统转入其他相应功能界面,最后数据库更新后,单击退出按钮退出系统。
图4-1系统流程图
4.3数据库设计
本系统采用的是McrosoftAccess数据库,拟建立Picture.mdb数据库文件,包含如下几个表文件:
tblCategories:
用于存储目录文件信息,包括IDCat,Category两个字段,均为文本类型数据,Category记录目录名字,IDCat是与表tblPictures相关的字段。
tblPictures:
用于记录图片信息,包含IDpict,IDcat,Path,Properties,DAtaInDB,Thumb,Comments等字段。
IDpict为自动编号类型,用于为数据库中的每一个图片编号,编号自动增加;IDcat文本类型,连接两个表的字段;Path备注类型,用于记录图片的路径;Properties文本类型,用于记录图片的大小和象素;DataInDB日期/时间类型,用于记录图片加入数据库的时间;Thumb为OLE对象类型,用于存储图片,图片以对象类型存储在数据库中,实际上是将图片转化程二进制数据存储;Comments备注类型数据,记录图片的名字(包括扩展名),此字段是Path的一部分。
第五章详细设计和编码
详细设计阶段的根本目标使确定应该怎样具体地实现所要求的系统,经过这个阶段的工作,应该得出对目标系统的精确描述,从而在编码阶段可以把这个描述直接翻译成用某种程序设计语言些的程序。
5.1工程设计
5.1.1工程compact_DB
工程compact_DB实现压缩数据库的功能。
由于图片属于大对象类型(本系统采用OLE对象类型),在数据库中占用空间,当数据量很大的时候会占用大量空间,因此需要压缩图片以减少空间浪费。
本系统使用的是MicroSoftVB6.0下数据库引擎TheMicrosoftJetdatabaseengine.,使用DBEngine.CompactDatabase方法对数据库进行压缩,DBEngine是DAO的一个成员。
5.1.2工程Thumb_DB
实现数据库的所有功能,包括添加数据库元素,显示数据库的内容,主窗体设计,数据库搜索及添加,全屏显示,浏览图片内容。
工程Thumb_DB包括frmAddtodb,frmComments,frmDB,frmMain,frmView等几个窗体,分别实现相应的功能,各个窗体通过各个控件的方法和事件进行通信,实现多种功能。
图片元素的处理功能均在工程Thumb_DB中实现,通过程序与数据库的连接,访问数据库的结果集。
其间应用了SQL语句和WindowsAPI函数实现了处理图片的功能。
5.2模块设计
5.2.1声明API函数
系统中要用到几个WindowsAPI(ApplicationProgramInterface)函数,用于调用系统函数,以便是程序来控制Windows的各个部件(从桌面的外观到位一个新进程分配的内存)的外观和行为的一套预先第一的Windows函数。
用VB写出的每行代码都会被VB转化成API函数传递给Windows。
声明的API函数如下:
PublicDeclareFunctiontimeGetTimeLib"winmm"()AsLong,该函数获取Windows最近一次开机到现在的时间,以毫秒计数。
PublicDeclareFunctionBitBltLib"gdi32"(ByValhDestDCAsLong,ByValxAsLong,ByValyAsLong,ByValnWidthAsLong,ByValnHeightAsLong,ByValhSrcDCAsLong,ByValxSrcAsLong,ByValySrcAsLong,ByValdwRopAsLong)AsLong,实现将一副位图从一个场景复制到另一个,源和目标DC之间必须兼容。
返回值零表示失败,非零表示成功。
PublicDeclareFunctionStretchBltLib"gdi32"(ByValhdcAsLong,ByValxAsLong,ByValyAsLong,ByValnWidthAsLong,ByValnHeightAsLong,ByValhSrcDCAsLong,ByValxSrcAsLong,ByValySrcAsLong,ByValnSrcWidthAsLong,ByValnSrcHeightAsLong,ByValdwRopAsLong)AsLong,实现将一副位图从一个场景复制到另一个,源和目标DC之间必须兼容。
这个函数会在设备场景中定义一个目标矩形,并在位图中定义一个源图像。
源矩形会根据需要进行伸缩,以便与目标矩形的大小相符。
返回值零表示失败,非零表示成功。
PublicDeclareFunctionGetStretchBltModeLib"gdi32"(ByValhdcAsLong)AsLong,判断StretchBlt和StretchDIBits函数采用的伸缩模式。
伸缩模式决定了Windows如何控制在伸缩过程中剔除的扫描线。
返回值long,取得当前的伸缩模式,零表示出错。
PublicDeclareFunctionSetStretchBltModeLib"gdi32"(ByValhdcAsLong,ByValnStret
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 图片 数据库 管理 系统
![提示](https://static.bdocx.com/images/bang_tan.gif)