图片数据库管理系统内容摘要:

计器和数据库设计器) 使用这些设计器,您可以可视地创建并修改数据库结构描述和查询:创建 SQL Server 和 Oracle 数据库表、通过拖放来创建视图、以及自动更改列的数据类型。 Visual SourceSafe 这个源 控件 (sourcecontrol) 工具跟踪并保存对文件的更改,使文件(例如代码模块)可以容易经济地重复 使用。  第三 章 系统需求分析 需求分析是软件生存周期中重要的一步,只有通过软件需求分析,才能把软件功能和性能的总体概念描述为具体的软件需求规格说明,进而建立软件开发的基础。 需求分析所要做的工作是深入描述软件的功能和性能,确定软件设计的限制和软件同其它系统元素的接口细节,定义软件其它有效性需求。 本章主要阐述了该系统的 需求分析、 功能要求 、分析建模和开发环境。 13 3. 1 需求分析 图片数据库系统是应用数据库 存储 管理图片, 实现高效、合理、规范和方便地管理图片的功能。 本系统将实现以下需求: 启动系统时,系统可 以自动搜索数据库 并正常连接到数据库。 可以对数据库进行一系列操作(查询、添加、删除)。 可以显示图片详细信息。 对数据库进行压缩,以减少图片所占用的空间。 可以更新数据库列表。 3. 2 功能需求 根据以上需求分析,本系统的具体功能如下: 系统启动时 首先自动加载默认数据库, 显示系统主窗体界面。 如果没有发现数据库则报告错误信息。 将搜索到的数据库添加到 frmDB 窗体中,用于选择。  添加图片时 单击 add pictures 向数据库中添加图片,此时调用另外一个添加图片窗体 并连接到数据库。 在添加图片窗体中,显示和 预览要 14 添加的图片的信息,以方便向数据库中添加图片。 向数据库的添加过程中显示添加的进度,进度条显示添加的百分比和所用时间。 搜索图片时 本系统实现的是按图片名字搜索图片,确定是搜索全部文件夹还是当前文件夹;然后确定匹配字符串是首字符串匹配还是中间字符串匹配。 工具栏分别显示数据库的第一个图片、最后一个、前一个和下一个等快捷按钮。 编辑图片时 查看图片的信息,设置右键菜单对图片进行编辑处理。 显示图片信息并能对图片进行处理,使图片以最好的格式显示。 3. 3 开发环境 本系统使用 Microsoft 公司的 Microsoft Visual 中Visual Basic 作为开发工具。 采用 Visual Basic 语言进行程序设计。 15 第 四 章 总体分析与设计 总体设计的基本目的就是回答“概括的说,系统应该如何实现。 ”这个问题,因此总体设计又称为概要设计或初步设计。 通过这个阶段的工作将划分处组成系统的物理元素 —— 程序、文件、数据库、 人工过程和问题等等。 总体设计的一项重要任务是设计软件的结构。 4. 1 系统分析 根据前面的设计思想进行分析,按照系统开发的基本观点进行分解,从内容上可对 系统 作如下划分 : 1. 系统应建立友好的界面,既要操作简单、直观、灵活,又要易于学习掌握 和操作。 2. 能构正确连接数据库,并实现数据库的基本功能,如:查询图片,显示图片信息,删除图片,添加图片,添加目录;能够按照图片名称查找 并显示相关信息,能够按照图片格式(如: gif, jpeg,bmp, ico 等)进行查找和插入等操作。 3. 在正确连接数据库,查询到用户相应的信息后,应在界面上显示相关的信息。 能够调用 windows 图片查看器显示图片,以此来对图片进行一系列的 windows 下的处理。 4. 能够对加入数据库的图片进行压缩操作,以减少图片 所占用的空间。 16 4. 2 系统流程图 本图片数据库管理系统的流程图 如图 2- 1。 流程图简单地介绍了程序的运行过程 以及主要功能。 本系统将按照流程图进行设计。 系统启动后,用户首先要添加数据库(在文件系统下搜索),然后系统自动载入图片数据库。 至此,用户就可以对图片数据库进行一系列操作了(如:添加,删除,检索等)。 点击相应的按钮,系统转入其他相应功能界面,最后数据库更新后,单击退出按钮退出系统。 17 图 4- 1 系统流程图 4. 3 数据库设计 本系统采 用的是 Mcrosoft Access 数据库,拟 建立 数据库文件,包含如下几个表文件:  系统主界面 搜索 启动系统 添加记录 图片管理 退出系统 搜索数据库 18 tblCategories:用于存储目录文件信息,包括 IDCat, Category两个字段,均为文本类型数据, Category 记录目录名字, IDCat是与表 tblPictures 相关的字段。 tblPictures:用于记录图片信息,包含 IDpict, IDcat, Path,Properties, DAtaInDB, Thumb, Comments 等字段。 IDpict 为自动编号类型,用于为 数据库中的每一个图片编号,编号自动增加;IDcat 文本类型,连接两个表的字段; Path 备注类型,用于记录图片的路径; Properties 文本类型,用于记录图片的大小和象素;DataInDB 日期 /时间类型,用于记录图片加入数据库的时间;Thumb 为 OLE 对象类型,用于存储图片,图片以对象类型存储在数据库中, 实际上是将图片转化程二进制数据存储; Comments备注类型数据,记录图片的名字(包括扩展名),此字段是 Path的一部分。 19 第 五 章 详细设计 和编码 详细设计阶段的根本目标使确定应该怎样具体地实现所要求的 系统,经过这个阶段的工作,应该得出对目标系统的精确描述,从而在编码阶段可以把这个描述直接翻译成用某种程序设计语言些的程序。 5. 1 工程设计 5. 1. 1 工程 pact_DB 工程 pact_DB 实现压缩数据库的功能。 由于图片属于大对象类型(本 系统采用 OLE 对象类型),在数据库中占用空间,当数据量很大的时候会占用大量空间,因此需要压缩图片以减少空间浪费。 本系统使用的是 MicroSoft VB 下数据库引擎 The Microsoft Jet database engine. , 使 用 方法对数据库进行压缩, DBEngine是 DAO 的一个成员。  20 5. 1. 2 工程 Thumb_DB 实现数据库的所有功能,包括添加数据库元素,显示数据库的内容,主窗体设计,数据库搜索及添加,全屏显示,浏览图片内容。 工程 Thumb_DB 包括 frmAddtodb, frmComments, frmDB,frmMain, frmView 等几个窗体,分别实现相应的功能,各个窗体通过各个控件的方法和事件进行通信,实现多种功能。 图片元素的处理功能均在工程 Thumb_DB 中实现, 通过程序与数据 库的连接,访问数据库的结果集。 其间应用了 SQL 语句和Windows API 函数实现了处理图片的功能。 5. 2 模块设计 5. 2. 1 声明 API 函数 系统中要用到几个 Windows API ( Application Program Interface)函数,用于调用系统函数,以便是程序来控制 Windows的各个部件(从桌面的外观到位一个新进程分配的内存)的外观和行为的一套预先第一的 Windows 函数。 用 VB 写出的每行代码都会被 VB 转化成 API 函数传递给 Windows。  声明的 API 函数如下: 21 Public Declare Function timeGetTime Lib winmm () As Long,该函数获取 Windows 最近一次开机到现在的时间,以毫秒计数。 Public Declare Function BitBlt Lib gdi32 (ByVal hDestDC As Long, ByVal x As Long, ByVal y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal hSrcDC As Long, ByVal xSrc As Long, ByVal ySrc As Long, ByVal dwRop As Long) As Long,实现将一副位图从一个场景复制到另一个,源和目标 DC之间必须兼容。 返回值零表示失败,非零表示成功。 Public Declare Function StretchBlt Lib gdi32 (ByVal hdc As Long, ByVal x As Long, ByVal y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal hSrcDC As Long, ByVal xSrc As Long, ByVal ySrc As Long, ByVal nSrcWidth As Long, ByVal nSrcHeight As Long, ByVal dwRop As Long) As Long,实现将一副位图从一个场景复制到另一个,源和目标 DC 之间必须兼容。 这个函数会在设备场景中定义一个目标矩形,并在位图中定义一个源图像。 源矩形会根据需要进行伸缩,以便与目标矩形的大小相符。 返回值零表示失败,非零表示成功。 Public Declare Function GetStretchBltMode Lib gdi32 (ByVal hdc As Long) As Long,判断 StretchBlt 和 StretchDIBits函数采用的伸缩模式。 伸缩模式决定了 Windows 如何控制在伸缩过程中剔除的扫描线。 返回值 long,取得当前的伸缩模式,零表示出错。 22 Public Declare Function SetStretchBltMode Lib gdi32 (ByVal hdc As Long, ByVal nStretchMode As Long) As Long,指定 StretchBlt 和 StretchDIBits 函数的伸缩模式。 这种伸缩模式定义了 Windows 如何对伸缩过程中剔除的扫描线进行控制。 对于 VB窗体和控件,倘若在 API 绘图过程中使用这个函数,建议恢复原来的 StretchBlt 模式。 返回值 long,返回上一次的伸缩模式值,零表示出错。 Public Declare Function ShellExecute Lib shell32 Alias ShellExecuteA (ByVal hWnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long,查找与指定文件关联在一起的程序的文件名。 非零表示成功,零表示失败。 Public。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。