1.1数据库应用系统开发简介 在数据库应用系统开发之前,对开发数据库的基本概念应当了解,对数据库的结构、开发数据库应用程序的步骤、开发体系及方法都应当有相当清晰的了解和认识。 数据库应用系统开发的目标是建立一个满足用户长期需求的产品。开发的主要过程为:理解用户的需求,然后,把它们转变为有效的数据库设计。把设计转变为实际的数据库,并且这些数据库带有功能完备、高效能的应用。 数据库技术在计算机软件邻域研究中一直是非常重要的主题,产生于60年代,30多年来数据库技术得到了迅速发展,并已形成较为完整的理论体系和一大批实用系统。并且,近年来,随着World Wide Web(WWW)的猛增及Internet技术的迅速发展,使得数据库技术之时成为最热门技术之一。 http://www.paper51.com 1.2图书管理系统 copyright paper51.com 当今时代是飞速发展的信息时代。在各行各业中离不开信息处理,这正是计算机被广泛应用于信息管理系统的环境。计算机的最大好处在于利用它能够进行信息管理。使用计算机进行信息控制,不仅提高了工作效率,而且大大的提高了其安全性。尤其对于复杂的信息管理,计算机能够充分发挥它的优越性。计算机进行信息管理与信息管理系统的开发密切相关,系统的开发是系统管理的前提。本系统就是为了管理好图书馆信息而设计的。 图书馆作为一种信息资源的集散地,图书和用户借阅资料繁多,包含很多的信息数据的管理,现今,有很多的图书馆都是初步开始使用,甚至尚未使用计算机进行信息管理。根据调查得知,他们以前对信息管理的主要方式是基于文本、表格等纸介质的手工处理,对于图书借阅情况(如借书天数、超过限定借书时间的天数)的统计和核实等往往采用对借书卡的人工检查进行,对借阅者的借阅权限、以及借阅天数等用人工计算、手抄进行。数据信息处理工作量大,容易出错;由于数据繁多,容易丢失,且不易查找。总的来说,缺乏系统,规范的信息管理手段。尽管有的图书馆有计算机,但是尚未用于信息管理,没有发挥它的效力,资源闲置比较突出,这就是管理信息系统的开发的基本环境。 数据处理手工操作,工作量大,出错率高,出错后不易更改。图书馆采取手工方式对图书借阅情况进行人工管理,由于信息比较多,图书借阅信息的管理工作混乱而又复杂;一般借阅情况是记录在借书证上,图书的数目和内容记录在文件中,图书馆的工作人员和管理员也只是当时对它比较清楚,时间一长,如再要进行查询,就得在众多的资料中翻阅、查找了,造成查询费时、费力。如要对很长时间以前的图书进行更改就更加困难了。 copyright paper51.com 基于这此问题,我认为有必要建立一个图书管理系统,使图书管理工作规范化,系统化,程序化,避免图书管理的随意性,提高信息处理的速度和准确性,能够及时、准确、有效的查询和修改图书情况。 内容来自www.paper51.com 1.3 本文的工作 内容来自www.paper51.com
本文首先探讨了SQL语言接口和Delphi软件开发工具的技术特点以及结合SQL 和Delphi的数据库访问方法,在此基础上,利用Delphi 7 和 Access 2002实现了一个通用的图书管理系统。在本文的后半部分,给出了该系统的整个系统分析、设计以及实现的过程,包括需求分析、功能模块的分析与设计、数据模式的分析与设计,最后是系统的Delphi实现。 paper51.com 第二章 数据库理论基础 copyright paper51.com 2.1 SQL语言介绍 http://www.paper51.com SQL功能强大,是一种完备的数据处理语言,不仅用于数据库查询,而且用于数据库中的数据修改和更新,概括起来,它可以分成以下几组:DML(Data Manipulation Language,数据操作语言):用于检索或者修改数据; DDL(Data Definition Language,数据定义语言): 用于定义数据的结构,比如 创建、修改或者删除数据库对象; DCL(Data Control Language,数据控制语言):用于定义数据库用户的权限。DML组可以细分为以下的几个语句:SELECT:用于检索数据;INSERT:用于增加数据到数据库;UPDATE:用于从数据库中修改现存的数据;DELETE:用于从数据库中删除数据。DDL语句可以用于创建用户和重建数据库对象。下面是DDL命令:CREATE TABLE,ALTER TABLE,DROP TABLE,CREATE INDEX,DROP INDEX下面是一个简单SQL语句的例子:我们使用SQL语句来从Book中检索‘借书证号’为‘000001’的借阅者姓名:SELECT 姓名 FROM Book WHERE 借书证号 = ‘000001’ 内容来自论文无忧网 www.paper51.com 2.2 SQL基础 paper51.com SQL(Structured Query Language,结构查询语言)是一个功能强大的数据库语言。SQL通常使用于数据库的通讯。ANSI(美国国家标准学会)声称,SQL是关系数据库管理系统的标准语言。SQL语句通常用于完成一些数据库的操作任务,比如在数据库中更新数据,或者从数据库中检索数据。使用SQL的常见关系数据库管理系统有:Oracle、 Sybase、 Microsoft SQL Server、 Access、 Ingres等等。虽然绝大多数的数据库系统使用SQL,但是它们同样有它们自立另外的专有扩展功能用于它们的系统。但是,标准的SQL命令,比如"Select"、 "Insert"、 "Update"、 "Delete"、 "Create"和 "Drop"常常被用于完成绝大多数数据库的操作。MS SQL Server 就是用的Transact- SQL。SQL语言有着非常突出的优点,主要是: http://www.paper51.com 一 非过程化语言 copyright paper51.com 二 统一的语言 内容来自www.paper51.com 三 是所有关系数据库的公共语言 内容来自论文无忧网 www.paper51.com
非过程化语言:SQL是一个非过程化的语言,因为它一次处理一个记录,对数据提供自动导航。SQL允许用户在高层的数据结构上工作,而不对单个记录进行操作,可操作记录集,所有SQL 语句接受集合作为输入,返回集合作为输出。SQL的集合特性允许一条SQL语句的结果作为另一条SQL语句的输入。 paper51.com SQL不要求用户指定对数据的存放方法, 这种特性使用户更易集中精力于要得到的结果;所有SQL语句使用查询优化器,它是RDBMS的一部分,由它决定对指定数据存取的最快速度的手段,查询优化器知道存在什么索引,在哪儿使用索引合适,而用户则从不需要知道表是否有索引、有什么类型的索引。 paper51.com 统一的语言:SQL可用于所有用户的DB活动模型,包括系统管理员、数据库管理员、 应用程序员、决策支持系统人员及许多其它类型的终端用户。 内容来自论文无忧网 www.paper51.com
SQL为许多任务提供了命令,其中包括: paper51.com 一 查询数据 内容来自www.paper51.com 二 在表中插入、修改和删除记录 http://www.paper51.com 三 建立、修改和删除数据对象 内容来自论文无忧网 www.paper51.com
四 控制对数据和数据对象的存取 http://www.paper51.com 五 保证数据库一致性和完整性 copyright paper51.com 以前的数据库管理系统为上述各类操作提供单独的语言,而SQL 将全部任务统一在一种语言中。 copyright paper51.com 所有关系数据库的公共语言:由于所有主要的关系数据库管理系统都支持SQL语言,用户可将使用SQL的技能从一个RDBMS(关系数据库管理系统)转到另一个,所有用SQL编写的程序都是可以移植的。 内容来自www.paper51.com
第三章 应用系统开发工具 http://www.paper51.com 3.1Delphi7.0简介 copyright paper51.com Delphi 1几乎与Windows 95同时发行, Delphi 1可以看作是Turbo Pascal的Windows版,它首次为使用Pascal语言的人提供了一个可视化的编程环境。虽然Microsoft公司的Visual Basic(VB)出现的时间要比Delphi 1早些,但它产生的代码是在解释器的控制下运行的,而Delphi直接把源程序文本编译为本机代码指令。 Delphi1仍然属于16位的开发环境,它创建的应用程序可以运行在Windows 3.1,Windows 95,和Windows NT下,直到Delphi的下一个版本。 内容来自www.paper51.com Delphi 2 中的主要新特征是32位编成的支持,其创建的应用程序不再运行在Windows 3.1下 。除此之外,Delphi 2还增加了入数据模块等多种高效的数据重用功能。 内容来自www.paper51.com Delphi 3大大巩固了Delphi作为Windows应用程序开发工具的地位,它改进了集成开发环境(IDE)“代码洞察”、对其组件库进行了许多增强、还完全支持ActiveX控件及其创建。 内容来自论文无忧网 www.paper51.com Delphi 4 则提供了Object Pascal 语言的扩展,使之更象C++。另外,还改进了“工程管理器”、“模块资官理器”的功能。当然,Delphi 4 不是一个很成功的版本,由于它的Bug 比较多,系统稳定性差,许多程序员宁愿放弃Delphi 4提供的许多新特性而使用广泛受到好评的 Delphi 3。 copyright paper51.com
1999年推出的Delphi 5不仅提供了底版本 Delphi 的诸多优点,克服了 Delphi 4中存在的缺陷,而且增加了许多新的功能,对开发环境也做了改进和完善。 copyright paper51.com 2001年6月推出了Delphi 6,Delphi 6又在Delphi 5 的基础上增加了许多新的功能,对开发环境也作了改进和完善,特别是增加了大量的新组件,以适应网络开发的需要。 copyright paper51.com
Delphi7一些新技术变得更加强大,它安装并提供了一些新技术,更重要的是这一版本还提供了一套可以被方便使用的第三方工具。Delphi7还向用户提供了首套用于编译Pascal/Delphi语言的Borland编译器,将不再对Intel CPU进行跟踪,而是转而跟踪 paper51.com
.NETCIL平台,这一做法为程序设计人员开创了一片新的天地。 http://www.paper51.com 3.2Delphi7.0 VCL组件的体系结构 paper51.com Delphi类可以粗略地分成两部分:一部分是组件类,这些组件类通常以某种方式出现在组件面板上,当用户从组件面板上点取一个类的图标后,在程序中就自动生成了该类的对象(非可视组件除外);另一部分是功能类,这此功能类的对象通常出现在程序代码中,起着不可代替的作用,但是这些功能类在组件面板上是找不到的。在Delphi中,每一个类的祖先都是Tobject类,整个类的层次结构就像一棵倒挂的树,在最顶层的树根即为Tobject类。这样,按照面向对象编程的基本思想,就使得用户可用Tobject类这个类型代替任何其它类的数据类型。实际上在Delphi的类库中,Tobject类派生出了为数相当众多的子类,它们形成了一个庞大的体系,通常情况下,如果不自行开发组件,就不必了解整个类的体系结构,只用到类层次树的叶结点就足够了。 这一小节简略介绍一下Delphi 7.0中VCL(可视化组件库)组件的体系结构。凡是做过程序开发的人都知道从来没有单纯的数据应用程序,也就是说,数据库应用程序必须和用户界面(可以是图形界面,也可以是命令接口)元素相结合,只讲界面或只讲数据库本身都构不成数据库应用程序,因而用Delphi 6.0开发数据库应用程序就隐含着界面开发。 内容来自论文无忧网 www.paper51.com |