《VisualFoxPro9.0程序设计与实例教程PPT讲义第1章.ppt》由会员分享,可在线阅读,更多相关《VisualFoxPro9.0程序设计与实例教程PPT讲义第1章.ppt(42页珍藏版)》请在三一办公上搜索。
1、程序设计与实例教程,第1章 数据库技术的发展及基本理论1,1.1 数据库技术的发展历史1.2 数据库系统1.3 数据库基本理论1.4 关系数据库的设计与关系运算1.5 Visual FoxPro 9.0高级数据库,1.1 数据库技术的发展历史,1.1.1 人工管理阶段1.1.2 文件系统阶段1.1.3 数据库系统阶段,1.1 数据库技术的发展历史,自从1946年第一台电子计算机ENIAC诞生以来,计算机的应用范围就迅速扩展。从最初单纯的科学计算到复杂的事务处理再到决策支持甚至人工智能,在这过程中,计算机所处理的数据量呈几何级急剧增长,数据间关系的复杂性也随之增加。数据库技术发展大致经过三个阶段
2、:人工管理阶段、文件系统阶段、数据库系统阶段。,1.1.1 人工管理阶段,这个时期数据管理的特点是:(1)数据不保存。(2)没有专用的软件对数据进行管理。(3)只有程序(Program)的概念,没有文件(File)的概念。(4)一组数据对应一个程序,数据是面向应用的。,1.1.1 人工管理阶段,以上特点可用图形来表示,如图1-1所示。,1.1.2 文件系统阶段,这一阶段的数据管理形成了如下几个特点:(1)计算机大量用于数据处理。(2)用软件进行数据管理,程序和数据之间有软件提供存取方法进行转换,有共同的数据查询修改的管理模块。(3)文件组织已多样化。(4)数据不再属于某个特定的程序,可以重复使
3、用。(5)上述特点比人工管理阶段有了很大的改进,但随着数据量的急剧增加,数据管理规模的扩大,文件系统显露出了三个缺点:数据冗余度(Redundancy)大。数据不一致性。数据和程序缺乏独立性。,1.1.2 文件系统阶段,这个时期程序与数据的关系如图1-2所示。,1.1.3 数据库系统阶段,特点如下:1.采用复杂的数据模型(结构)数据模型描述数据本身的特点和数据之间的联系,这种联系通过存取路径实现。2.有较高的数据独立性数据库的结构分成用户的逻辑结构、整体逻辑结构、物理结构三级。3.提供方便的用户接口数据库系统为用户提供了方便的用户接口,用户可使用查询语言或简单的终端命令操作数据库,也可以用程序
4、方式操作数据库。,1.1.3 数据库系统阶段,4.提供数据控制功能数据库管理系统提供以下四方面的数据控制功能:(1)数据完整性。保证数据库始终包含正确的数据。(2)数据安全性。(3)数据库的并发控制。(4)数据库的恢复。,1.2 数据库系统,1.2.1 数据库1.2.2 软件系统1.2.3 硬件系统1.2.4 数据库管理员,1.2 数据库系统,数据库系统(Database system)是采用数据库技术构建的复杂计算机系统。数据库,软件系统,硬件系统,数据库管理人员被称为数据库系统的四要素。,1.2.1 数据库,数据库是按一定结构组织的,各种应用相关的所有数据的集合。它包含了数据库管理系统处理
5、的全部数据。其内容主要分为两个部分:一是物理数据库,记载了所有数据;二是数据字典,描述了不同数据之间的关系和数据组织的结构。,1.2.2 软件系统,软件系统包括了数据库管理系统(DBMS)、操作系统(Operating System)、应用程序开发工具及各种应用程序。图1-4详细描述了应用程序通过DBMS和操作系统访问(读取)数据库的过程。,图1-4,1.2.3 硬件系统,硬件系统是指支持数据库系统运行的全部硬件,一般由中央处理器、主存、外存等硬件设备组成。不同的数据库对硬件系统的要求有所不同,普通的桌面数据库一般可以运行在个人计算机上,而一些大型数据库如Oracle,Sybase等,则对硬件
6、系统有较高的要求。另外,如果是联网的数据库系统则还需要购买配套的网络设备。,1.2.4 数据库管理员,数据库管理员(Database administrator,简称DBA),是专门负责数据库系统设计、运行和维护的专职人员。他们在数据库系统的规划、设计、运行阶段都担任着重要的任务。1)数据库规划设计阶段 2)管理方面,1.3 数据库基本理论,1.3.1 数据处理的抽象描述1.3.2 数据模型,1.3 数据库基本理论,学习和熟悉以下所介绍的基础理论,有助于更加清晰的了解数据库技术原理和更透彻地掌握数据库技术。,1.3.1 数据处理的抽象描述,人们研究和处理数据的过程中,常常把数据的转换分为三个领
7、域现实世界、信息世界、机器世界,这三个世界间的转换过程,就是将客观现实的信息反映到计算机数据库中的过程。1.现实世界(Real Word)客观存在的世界就是现实世界,它独立于人们的思想之外。,1.3.1 数据处理的抽象描述,2.信息世界(Information World)信息世界是现实世界在人们头脑中的反映,人的思维将现实世界的数据抽象化和概念化,并用文字符号表示出来,就形成了信息世界。(1)实体(Entity)。(2)属性(Attribute)。(3)键(Key)。(4)联系(Relation)。,1.3.1 数据处理的抽象描述,实体之间的联系有四种:一对一关系,一对多关系,多对一关系,多
8、对多关系,图1-5分别表示了这四种关系。,工人和工号的一对一关系 车间和工人的一对多关系,1.3.1 数据处理的抽象描述,工人和宿舍的多对一关系 工人和产品的多对多关系,1.3.1 数据处理的抽象描述,机器世界又称数据世界。信息世界中的信息经过抽象和组织,以数据形式存贮在计算机中,就称为机器世界。(1)字段(Field)。(2)记录(Record)。(3)文件(File)。,1.3.1 数据处理的抽象描述,4.三个世界的转换由以上对三个世界的描述可以看到,从现实世界到信息世界再到机器世界,事务被一层层抽象,加工,符号化,逻辑化,而这个过程都是有一定联系的。表1-1表示了转换过程中的逻辑联系。,
9、1.3.2 数据模型,数据模型分为两种:一种是信息模型,它反映了信息从现实世界到信息世界的转化,不涉及计算机软硬件的具体细节,而注重于符号表达和用户的理解能力,典型的信息模型有著名的“实体联系模型”;另一种是结构数据模型,它反映了信息从信息世界到机器世界的转换,描述了计算机中数据的逻辑结构,还涉及到信息在存储器上的具体组织。一个完整的数据模型必须包括数据结构、数据操作及完整性约束3个部分。,1.3.2 数据模型,1.信息模型最典型的信息模型就是实体联系模型(Entity-Relation Model,简称E-R模型)E-R模型用图形描述了实体、属性和联系三要素。关于借书的E-R图如图1-6所示
10、。,1.3.2 数据模型,2.结构数据模型结构数据模型是机器世界的数据模型,常见的结构数据模型有层次模型、网状模型以及关系模型。1)层次模型(Hierarchical Model)层次模型的数据结构是树,因此,层次模型用树型结构来表示实体以及它们之间的联系。图1-7所示的是某大学部分院系结构图和它所对应的树。,2.结构数据模型,学校院系结构图 树图1-7,1.3.2 数据模型,2)网状模型(Network Model)网状模型的数据结构是有向图,网状模型使用网络结构表示实体以及它们之间的联系。如图1-8所示为选课系统的网络。,图1-8,1.3.2 数据模型,3)关系模型关系模型是应用最为广泛的
11、一种结构数据模型,在关系模型中,把数据组织成一个个二维表。一个关系模型由若干个关系模式组成。关系模式就是记录的类型。一个关系模式的实例称为关系。如图1-9所示是一个关于学生、课程、成绩的关系模型。,图1-9,1.3.2 数据模型,表1-2表达了学生情况模式。表1-2 学生情况模式,1.3.2 数据模型,表1-3表达了选课模式。,1.3.2 数据模型,表1-4表达了成绩表模式。表1-4 成绩模式,1.4 关系数据库的设计与关系运算,1.系统分析要设计出一个有效的数据库必须要用系统工程的观点考虑问题。这一阶段计算机人员和用户双方共同收集数据库所需要的信息内容、用户对处理的要求、系统安全性和完整性等
12、,作为系统分析的基础。(1)信息内容。(2)处理要求。,1.4 关系数据库的设计与关系运算,2.概念结构设计概念设计是数据库设计的关键,概念设计也称模式设计。这个阶段得到的概念结构要能充分地反映现实世界中各种事物之间的联系。同时,系统结构必须易扩充、易修改。3.逻辑结构设计逻辑结构设计的任务是把概念结构转换成数据库管理系统能处理的数据模型,建立用户需要的数据库,如关系模型。,1.4 关系数据库的设计与关系运算,4.物理结构设计是对给定的基本数据模型选择一个最适合应用环境的物理结构的过程。5.数据库的实现和维护数据库实现是根据物理设计的结果产生一个具体的数据库和它的应用程序,并把原始数据装入数据
13、库。,1.5 Visual FoxPro 9.0高级数据库,开发平台1.5.1 丰富的函数1.5.2 速度提高1.5.3 完全的面向对象支持1.5.4 高度的兼容性,1.5 Visual FoxPro 9.0高级数据库开发平台1.5.1 丰富的函数,Visual FoxPro含有大量专门的数据操作函数,它们使得对数据库的操作变得更加方便和快捷。而在VB或VC中,必须自己写许多小的数据库函数。由于VFP的这个优点,它可以用比其他少一半以上的代码达到相同的目的。,1.5.2 速度提高,Visual FoxPro的数据操作速度有所提高,它可以对上百万个记录进行快速的查询、删除、修改操作而几乎感觉不到
14、任何地延迟。读者可以亲自做一个试验,分别用VFP和VB或其他数据库开发工具开发并运行对一百万个记录进行查询、删除、修改操作的程序。相信VFP的速度会给你留下深刻的印象。,1.5.3 完全的面向对象支持,Visual FoxPro为用户提供了丰富的控件。可以方便地将文本框、命令按钮、列表框等控件拖放到表单上。而且如果系统提供的控件还不能满足用户的话,用户还可以快速构造自己的类并将它应用到应用程序中。,1.5.4 高度的兼容性,Visual FoxPro的兼容性极好,它可以作为MS SQL Server或者Oracle前端开发工具,与它们无缝集成而不用编制专门的程序。VFP还是开发MS SQL Server应用的理想的语言。,小结,本章主要介绍数据库的基础知识,包括各阶段数据库技术的发展历史、数据库原理和基本理论,为今后的数据库设计和应用打下一定的基础。数据库技术的发展大致经过三个阶段:人工管理阶段、文件系统阶段、数据库系统阶段。每个阶段都有其特点。数据库,软件系统,硬件系统,数据库管理人员被称为数据库系统的四要素。数据库设计过程大概可分为五个步骤:系统分析、概念结构设计、逻辑结构设计、物理结构设计和数据库的实现和维护。在几种数据库类型中,重点介绍了关系数据库的设计与关系运算。由于Visual FoxPro 9.0属于关系数据库,掌握关系数据库的设计和关系运算显得尤为重要。,