VFP数据库系统.ppt
《VFP数据库系统.ppt》由会员分享,可在线阅读,更多相关《VFP数据库系统.ppt(122页珍藏版)》请在三一办公上搜索。
1、1,Visual foxpro 语言,主讲:余虹,长沙理工大学经管学院,2,1.1 数据管理技术的发展1.2 数据库系统1.3 数据模型1.4 关系数据库1.5 Visual FoxPro系统简介1.6 Visual FoxPro操作基础1.7 项目管理器1.8 VFP的文件类型,第一章 数据库系统基础知识,3,1.1 数据管理技术的发展,1.1.1 数据与数据处理1.数据和信息2.数据处理1.1.2 数据管理技术1.人工管理阶段2.文件系统阶段3数据库系统阶段(1)分布式数据库系统(2)面向对象数据库系统(3)多媒体数据库系统(4)数据仓库,4,1.1.1 数据与数据处理1.数据和信息 数据
2、是人们用于记录事物情况的物理符号。为了描述客观事物而用到的数字、字符以及所有能输入到计算机中并能被计算机处理的符号都可以看作数据。有两种基本形式的数据:数值型数据、字符型数据。此外,还有图形、图像、声音等多媒体数据。,5,信息是数据中所包含的意义。通俗地讲,信息是经过加工处理并对人类社会实践和生产活动产生决策影响的数据。数据与信息既有区别,又有联系。数据是表示信息的,但并非任何数据都能表示信息,信息只是加工处理后的数据,是数据所表达的内容。另一方面信息不随表示它的数据形式而改变,它是反映客观现实世界的知识,而数据则具有任意性,用不同的数据形式可以表示同样的信息。,6,数据处理是指将数据转换成信
3、息的过程。它包括对数据的收集、存储、分类、计算、加工、检索和传输等一系列活动。其基本目的是从大量的、杂乱无章的、难以理解的数据中整理出对人们有价值、有意义的数据(即信息),作为决策的依据。,2.数据处理,7,1.1.2 数据管理技术,1.人工管理阶段 20世纪50年代中期以前,计算机主要应用于科学计算,数据量较少,一般不需要长期保存数据。硬件方面,没有磁盘等直接存取的外存储器。软件方面,没有对数据进行管理的系统软件。在此阶段,对数据的管理是由程序员个人考虑和安排的,他们既要设计算法,又要考虑数据的逻辑结构、物理结构以及输入输出方法等问题。程序与数据是一个整体,一个程序中的数据无法被其他程序使用
4、,因此程序与程序之间存在大量的重复数据。数据存储结构一旦有所改变,则必须修改相应程序。应用程序的设计与维护负担繁重。,8,2.文件系统阶段 20世纪50年代后期至60年代后期,计算机开始大量用于数据管理。硬件上出现了直接存取的大容量外存储器,如磁盘、磁鼓等,这为计算机系统管理数据提供了物质基础。软件方面,出现了操作系统,其中包含文件系统,这又为数据管理提供了技术支持。文件系统提供了在外存储器上长期保存数据并对数据进行存取的手段。文件的逻辑结构与存储结构有一定区别,即程序与数据有一定的独立性。数据的存储结构变化,不一定影响到程序,因此程序员可集中精力进行算法设计,并大大减少了维护程序的工作量。,
5、9,文件系统使计算机在数据管理方面有了长足的进步。时至今日,文件系统仍是一般高级语言普遍采用的数据管理方式。然而当数据量增加、使用数据的用户越来越多时,文件系统便不能适应使用数据的需要了,其症结表现在3个方面:(1)数据的冗余度大。由于数据文件是根据应用程序的需要而建立的,当不同的应用程序所需要使用的数据有许多部分相同时也必须建立各自的文件,即数据不能共享,造成大量重复。这样不仅浪费存储空间,而且使数据修改变得非常困难,容易产生数据不一致,即同样的数据在不同的文件中所存储的数值不同,造成矛盾。,10,(2)数据独立性差。在文件系统中,数据和应用程序是互相依赖的,即程序的编写与数据组织方式有关,
6、如果改变数据的组织方式,就必须修改有关应用程序。这无疑将增加用户的负担。此外,数据独立性差也不利于系统扩充、系统移植等开发推广工作。(3)缺乏对数据的统一控制管理。在同一个应用项目中的各个数据文件没有统一的管理机构,数据完整性和安全性很难得到保证。数据的保护等均交给应用程序去解决,使得应用程序的编制相当繁琐。较好地解决文件系统存在的问题,正是数据库系统的目标。,11,3数据库系统阶段 20世纪60年代后期,计算机在管理中应用规模更加庞大、数据量急剧增加,数据共享性更强。硬件价格下降,软件价格上升,编制和维护软件所需成本相对增加,其中维护成本更高。这些成为数据管理在文件系统的基础上发展到数据库系
7、统的原动力。在数据库系统中,由一种叫做数据库管理系统(DBMS:Database Management Systems)的系统软件来对数据进行统一的控制和管理,从而有效地减少了数据冗余,实现了数据共享,解决了数据独立性问题,并提供统一的安全性、完整性和并发控制功能。,12,数据库是在数据库管理系统的集中控制之下,按一定的组织方式存储起来的、相互关联的数据集合。在数据库中集中了一个部门或单位完整的数据资源,这些数据能够为多个用户同时共享,且具有冗余度小、独立性和安全性高等特点。,13,数据库技术的发展先后经历了层次数据库、网状数据库和关系数据库。层次数据库和网状数据库可以看作是第一代数据库系统,
8、关系数据库可以看作是第二代数据库系统。自20世纪70年代提出关系数据模型和关系数据库后,数据库技术得到了蓬勃发展,应用也越来越广泛。但随着应用的不断深入,占主导地位的关系数据库系统已不能满足新的应用领域的需求。正是实际中涌现出的许多问题,促使数据库技术不断向前发展,涌现出许多不同类型的新型数据库系统。,14,下面概要性地作一些介绍。(1)分布式数据库系统 分布式数据库系统(Distributed Database System)是在集中式数据库基础上发展起来的,是数据库技术与计算机网络技术、分布处理技术相结合的产物。分布式数据库系统是地理上分布在计算机网络不同结点,逻辑上属于同一系统的数据库系
9、统,能支持全局应用,同时存取两个或两个以上结点的数据。,15,(2)面向对象数据库系统 面向对象数据库系统(Object-Oriented Database System)是将面向对象的模型、方法和机制,与先进的数据库技术有机地结合而形成的新型数据库系统。它从关系模型中脱离出来,强调在数据库框架中发展类型、数据抽象、继承和持久性。它的基本设计思想是,把面向对象语言向数据库方向扩展,使应用程序能够存取并处理对象,以便对现实世界中复杂应用的实体和联系建模。因此,面向对象数据库系统首先是一个数据库系统,具备数据库系统的基本功能,其次是一个面向对象的系统,针对面向对象的程序设计语言的永久性对象存储管理
10、而设计的,充分支持完整的面向对象概念和机制。,16,(3)多媒体数据库系统 多媒体数据库系统(Multi-media Database System)是数据库技术与多媒体技术相结合的产物。在许多数据库应用领域中,都涉及到大量的多媒体数据,这些与传统的数字、字符等格式化数据有很大的不同,都是一些结构复杂的对象。,17,(4)数据仓库 信息技术的高速发展,数据库应用的规模、范围和深度不断扩大,一般的事务处理已不能满足应用的需要,企业界需要在大量信息数据基础上的决策支持,数据仓库(Data Warehouse)技术的兴起满足了这一需求。数据仓库作为决策支持系统(Decision Support Sy
11、stem)的有效解决方案,涉及3方面的技术内容:数据仓库技术、联机分析处 理(On-Line Analysis Processing,OLAP)技术和数据挖掘(Data Mining)技术。,18,1.2 数据库系统,1.2.1 数据库系统的组成1.硬件 2.软件3.数据库4.数据库系统的有关人员1.2.2 数据库系统的特点1数据共享2减少数据冗余3具有较高的数据独立性4增强了数据安全性和完整性保护,19,1.2.1 数据库系统的组成 数据库系统是把有关计算机硬件、软件、数据和人员组合起来为用户提供信息服务的系统。因此,数据库系统是由计算机系统、数据库及其描述机构、数据库管理系统和有关人员组成
12、,是由这几个方面组成的具有高度组织性的总体。1.硬件 数据库系统对计算机硬件的要求除要求CPU的处理速度高、内存容量大以外,还要求有足够的外存空间以存储数据库中的数据。,20,2.软件 数据库系统中的软件包括操作系统、数据库管理系统及数据库应用系统等。数据库管理系统是数据库系统的核心软件之一。它提供数据定义、数据操作、数据库管理、数据库建立和维护以及通信等功能。数据库应用系统是指系统开发人员利用数据库系统资源开发出来的,面向某一类实际应用的应用软件系统。它分为两类:(1)管理信息系统。这是面向机构内部业务和管理的数据库应用系统。(2)开放式信息服务系统。这是面向外部、提供动态信息查询功能,以满
13、足不同信息需求的数据库应用系统。,21,3.数据库 数据库系统中的数据库是按一定法则存储在计算机外存储器中的大批数据。它不仅包括描述事物的数据本身,而且还包括相关事物之间的联系。数据库中的数据往往不是像文件系统那样,只面向某一项特定应用,而是面向多种应用,可以被多个用户、多个应用程序共享。其数据结构独立于使用数据的程序,对于数据的增加、删除、修改和检索由系统软件进行统一的控制。,无论是哪一类信息系统,从实现技术角度而言,都是以数据库技术为基础的计算机应用系统。,22,4.数据库系统的有关人员 数据库系统的有关人员主要有3类:最终用户、数据库应用系统开发人员和数据库管理员(DBA:Databas
14、e Administrator)。最终用户指通过应用系统的用户界面使用数据库的人员,他们一般对数据库知识了解不多。数据库应用系统开发人员包括系统分析员、系统设计员和程序员。系统分析员负责应用系统的分析,他们和用户、数据库管理员相配合,参与系统分析;系统设计员负责应用系统设计和数据库设计;程序员则根据设计要求进行编码。数据库管理员是数据管理机构的一组人员,他们负责对整个数据库系统进行总体控制和维护,以保证数据库系统的正常运行。,23,1.2.2 数据库系统的特点1数据共享 数据共享是指多个用户可以同时存取数据而不相互影响,数据共享包括以下三个方面:所有用户可以同时存取数据;数据库不仅可以为当前的
15、用户服务,也可以为将来的新用户服务;可以使用多种语言完成与数据库的接口。,24,2减少数据冗余 数据冗余就是数据重复,数据冗余既浪费存储空间,又容易产生数据的不一致。在非数据库系统中,由于每个应用程序都有自己的数据文件,所以数据存在着大量的重复。数据库从全局观念来组织和存储数据,数据已经根据特定的数据模型结构化,在数据库中用户的逻辑数据文件和具体的物理数据文件不必一一对应,从而有效地节省了存储资源,减少了数据冗余,增强了数据的一致性。,25,3具有较高的数据独立性 所谓数据独立是指数据与应用程序之间的彼此独立,它们之间不存在相互依赖的关系。在数据库系统中,数据库管理系统通过映像,实现了应用程序
16、对数据的逻辑结构与物理存储结构之间较高的独立性。数据库的数据独立包括两个方面:(1)物理数据独立:数据的存储格式和组织方法改变时,不影响数据库的逻辑结构,从而不影响应用程序。(2)逻辑数据独立:数据库逻辑结构的变化(如数据定义的修改,数据间联系的变更等)不影响用户的应用程序。,26,4增强了数据安全性和完整性保护 数据库加入了安全保密机制,可以防止对数据的非法存取。由于实行集中控制,有利于控制数据的完整性。数据库系统采取了并发访问控制,保证了数据的正确性。另外,数据库系统还采取了一系列措施,实现了对数据库破坏的恢复。,27,1.3 数据模型,1.3.1 实体及其联系 1实体 2实体间的联系(1
17、)一对一联系(1:1)(2)一对多联系(1:n)(3)多对多联系(m:n)1.3.2 数据模型 1.层次模型 2网状模型 3关系模型,28,1.3.1 实体及其联系1实体 从数据处理的角度看,现实世界中的客观事物称为实体,它可以指人,如一个教师、一个学生等等,也可以指物,如一本书、一张桌子等。它不仅可以指实际的物体,还可以指抽象的事件,如一次借书、一次奖励等等。它还可以指事物与事物之间的的联系,如学生选课、客户订货等。,29,一个实体可有不同的属性,属性描述了实体某一方面的特性。例如,教师实体可以用教师编号、姓名、性别、出生日期、职称、基本工资、研究方向等属性来描述。每个属性可以取不同的值,对
18、于具体的某一教师,其编号为10121、姓名为张三、性别为男、出生日期为1963年9月7日、职称为教授、基本工资为678元、研究方向为网络信息系统,分别为上述教师实体属性的取值。属性值的变化范围称作属性值的域。如性别这个属性的域为(男,女),职称的域为(助教,讲师,副教授,教授)等等,由此可见,属性是个变量,属性值是变量所取的值,而域是变量的变化范围。,30,由上可见,属性值所组成的集合表征一个实体,相应的这些属性的集合表征了一种实体的类型,称为实体型,例如上面的教师编号、姓名、性别、出生日期、职称、基本工资、研究方向等表征“教师”这样一种实体的实体型。同类型的实体的集合称为实体集。在Visua
19、l FoxPro中,用“表”来表示同一类实体,即实体集,用“记录”来表示一个具体的实体,用“字段”来表示实体的属性。显然,字段的集合组成一个记录,记录的集合组成一个表。相应于实体型,则代表了表的结构。,31,2实体间的联系 实体之间的对应关系称为联系,它反映了现实世界事物之间的相互关联。例如,图书和出版社之间的关联关系为:一个出版社可出版多种书,同一种书只能在一个出版社出版。实体间的联系是指一个实体集中可能出现的每一个实体与另一实体集中多少个具体实体存在联系。实体之间有各种各样的联系,归纳起来有3种类型:,32,(1)一对一联系(1:1)。如果对于实体集A中的每一个实体,实体集B中有且只有一个
20、实体与之联系,反之亦然,则称实体集A与实体集B具有一对一联系。(2)一对多联系(1:n)。如果对于实体集A中的每一个实体,实体集B中有多个实体与之联系,反之,对于实体集B中的每一个实体,实体集A中至多只有一个实体与之联系,则称实体集A与实体集B有一对多的联系。(3)多对多联系(m:n)。如果对于实体集A中的每一个实体,实体集B中有多个实体与之联系,而对于实体集B中的每一个实体,实体集A中也有多个实体与之联系,则称实体集A与实体集B之间有多对多的联系。,33,1.3.2 数据模型 数据模型是对客观事物及其联系的数据描述,反映实体内部和实体之间的联系。由于采用的数据模型不同,相应的数据库管理系统也
21、就完全不同。在数据库系统中,常用的数据模型有层次模型、网状模型和关系模型3种。,34,1.层次模型 层次模型用树形结构来表示实体及其之间的联系。在这种模型中,数据被组织成由“根”开始的“树”,每个实体由根开始沿着不同的分支放在不同的层次上。树中的每一个结点代表实体型,连线则表示它们之间的关系。根据树形结构的特点,建立数据的层次模型需要满足两个条件:(1)有一个结点没有父结点,这个结点即根结点。(2)其他结点有且仅有一个父结点。,35,层次模型具有层次清晰、构造简单、易于实现等优点。但由于受到如上所述的两个条件的限制,它可以比较方便地表示出一对一和一对多的实体联系,而不能直接表示出多对多的实体,
22、对于多对多的联系,必须先将其分解为几个一对多的联系,才能表示出来。因而,对于复杂的数据关系,实现起来较为麻烦,这就是层次模型的局限性。采用层次模型来设计的数据库称为层次数据库。,36,2网状模型 网状数据模型用以实体型为结点的有向图来表示各实体及其之间的联系。其特点是:(1)可以有一个以上的结点无父结点。(2)至少有一个结点有多于一个的父结点。由于树形结构可以看成是有向图的特例,所以网络模型要比层次模型复杂,但它可以直接用来表示“多对多”联系。然而由于技术上的困难,一些已实现的网状数据库管理系统(如DBTG)中仍然只允许处理“一对多”联系。,37,3关系模型 关系模型与层次模型和网状模型相比有
23、着本质的差别,它是用二维表格来表示实体及其相互之间的联系。在关系模型中,把实体集看成一个二维表,每一个二维表称为一个关系。每个关系均有一个名字,称为关系名。虽然关系模型比层次模型和网状模型发展得晚,但是因为它建立在严格的数学理论基础上,所以是目前比较流行的一种数据模型。自20世纪80年代以来,新推出的数据库管理系统几乎都支持关系模型,Visual FoxPro就是一种关系数据库管理系统。,38,1.4 关系数据库,1.4.1 关系模型 1关系模型的基本概念(1)关系(2)元组(3)属性(4)域(5)关键字(6)候选关键字(7)主关键字(8)外部关键字(9)关系模式2关系的基本特点3关系模型的优
24、点1.4.2 关系数据库,39,1.4.1 关系模型1关系模型的基本概念(1)关系 一个关系就是一张二维表,通常将一个没有重复行、重复列的二维表看成一个关系,每个关系都有一个关系名。在Visual FoxPro中,一个关系对应于一个表文件,其扩展名为.dbf。(2)元组 二维表的每一行在关系中称为元组。在Visual FoxPro中,一个元组对应表中一个记录。,40,(3)属性 二维表的每一列在关系中称为属性,每个属性都有一个属性名,属性值则是各个元组属性的取值。在Visual FoxPro中,一个属性对应表中一个字段,属性名对应字段名,属性值对应于各个记录的字段值。(4)域 属性的取值范围称
25、为域。域作为属性值的集合,其类型与范围具体由属性的性质及其所表示的意义确定。同一属性只能在相同域中取值。,41,(5)关键字 关系中能惟一区分、确定不同元组的属性或属性组合,称为该关系的一个关键字。单个属性组成的关键字称为单关键字,多个属性组合的关键字称为组合关键字。需要强调的是,关键字的属性值不能取“空值”,所谓空值就是“不知道”或“不确定”的值,因而无法惟一地区分、确定元组。(6)候选关键字 关系中能够成为关键字的属性或属性组合可能不是惟一的。凡在关系中能够惟一区分、确定不同元组的属性或属性组合,称为候选关键字。,42,(7)主关键字 在候选关键字中选定一个作为关键字,称为该关系的主关键字
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VFP 数据库 系统
链接地址:https://www.31ppt.com/p-5452130.html