




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
01数据库基本原理01数据库基本原理第1章数据库基本原理数据库技术是计算机科学技术的一个重要分支,数据库技术的形成有两大推动力:首先是计算机技术的发展,计算机技术的发展为数据库的出现提供了技术基础;其次是现代社会数据和信息成几何级数增长,即所谓的信息爆炸。信息爆炸使得社会迫切需要一种技术来有效地管理数据,在技术和需求的推动下,形成了现代数据库技术。自1968年第一个商品化的数据库管理系统IMS问世以来,数据库技术得到迅速发展,已经成为信息管理、办公自动化、计算机辅助设计、决策支持等方面应用的主要手段,广泛应用于社会各个行业和领域。12/11/20222中文VisualFoxPro9.0数据库应用与开发教程第1章数据库基本原理数据库技术是计算机科学技术的最新01数据库基本原理课件最新01数据库基本原理课件最新01数据库基本原理课件最新01数据库基本原理课件最新01数据库基本原理课件最新01数据库基本原理课件1.2数据模型现实世界中的客观事物彼此联系,某一事物内部的联系,形成系统;系统之间联系,形成更大的系统。客观事物的这种普遍联系性,决定了作为事物属性记录符号的数据与数据之间也存在着一定的联系性。具有联系性的相关数据总是按照一定的组织关系排列,从而构成一定的结构,对这种结构的描述就是数据模型。从理论上讲,数据模型是指反映客观事物及客观事物间联系的数据组织的结构和形式。客观事物是千变万化的,表现各种客观事物的数据结构和形式也是千差万别的,尽管如此,它们之间还是有其共同性的。12/11/20229中文VisualFoxPro9.0数据库应用与开发教程1.2数据模型现实世界中的客观事物彼此联系,某1.2.1数据模型的组成要素一般地讲,数据模型是严格定义的概念的集合,这些概念精确描述了系统的静态特性、动态特性和完整性约束。因此,数据模型通常由数据结构、数据操作和数据约束3部分组成,这三个组成要素完整地描述了数据模型。1.数据结构数据结构是所研究的对象类型的集合,是数据库的组成部分。研究数据结构的任务是利用计算机系统的知识来描述客观世界的对象,以便能方便地进行处理。例如在关系结构中,使用表格数据结构来描述客观世界中的对象。12/11/202210中文VisualFoxPro9.0数据库应用与开发教程1.2.1数据模型的组成要素12/10/202210中文2.数据操作数据操作是指对数据库中各种对象(型)实例(值)允许执行的操作的集合,包括操作及操作规则。数据库操作主要包括检索和更新(包括插入、删除、修改等)两类操作。3.数据约束数据约束是指完整性规则的集合。完整性规则是给定的数据模型中数据及其联系所具有的制约和依存规则,用以限定符号数据模型的数据库状态及状态的变化,以保证数据的正确、有效和相容。12/11/202211中文VisualFoxPro9.0数据库应用与开发教程2.数据操作12/10/202211中文Visual1.2.2数据模型的分类数据模型先后经历了层次模型、网状模型、关系模型和面向对象模型几个阶段,其中,层次模型和网状模型统称为非关系模型,非关系模型在20世纪70年代至80年代初非常流行。现在,关系模型因为有着完整的理论基础,已经逐渐取代了层次模型和网状模型,在数据库产品中占据了主导地位。12/11/202212中文VisualFoxPro9.0数据库应用与开发教程1.2.2数据模型的分类12/10/202212中文V1.层次模型(HierarchicalModel)利用树型结构表示实体及其之间联系的模型称为层次模型。层次模型中的结点为记录型,表示某种类型的实体,结点之间的连线则表示了它们之间的关系。层次模型具有如下特点:(1)有且仅有一个结点无双亲结点,称为根结点。(2)根结点以外的其他结点有且仅有一个双亲结点。层次模型结构简单,层次清楚,查找的路径明显,但是它只能处理一对多的实体联系。12/11/202213中文VisualFoxPro9.0数据库应用与开发教程1.层次模型(HierarchicalModel)122.网状模型(NetworkModel)利用网状结构表示实体及其之间联系的模型称为网状模型。网状结构是层次模型的扩展,它表示多个从属关系的层次结构,呈现一种交叉关系的网络结构。网状模型是以记录为结点的网络结构,其典型代表是DBTG系统。网状模型具有如下特点:(1)可以有一个以上的结点无双亲结点。(2)至少有一个结点有多于一个的双亲结点。可以看出,网状模型去掉了层次模型的两个限制,因而可以描述更复杂的多对多的实体联系。层次模型是网状模型的特殊形式,网状模型是层次模型的一般形式。12/11/202214中文VisualFoxPro9.0数据库应用与开发教程2.网状模型(NetworkModel)12/10/23.关系模型(RelationalModel)用二维表结构表示实体以及实体之间联系的模型称为关系模型。关系模型把各种联系都统一描述成一些二维表,即由若干行和若干列组成的表格。每一个这样的二维表格就称为一个关系。在关系模型中常用的术语:(1)关系:一个关系对应着通常说的一个二维表,是具有相同性质的元组的集合。(2)元组:二维表中的一行称为一个元组,一个元组相当于一个记录。(3)属性:二维表中的一列称为一个属性,一个属性相当于一个字段。(4)域:属性的取值范围称作域。(5)分量:元组中的一个属性值称作分量。12/11/202215中文VisualFoxPro9.0数据库应用与开发教程3.关系模型(RelationalModel)12/14.面向对象模型(关系对象模型)20世纪90年代中期以来,人们发现关系模型的一些缺陷,提出了面向对象模型,引入了对象、类、属性、方法、事件等概念。面向对象模型一方面对数据结构方面的关系结构进行了改良,另一方面为数据操作引入了对象操作的概念和手段。如今的数据库管理系统基本上都提供了这方面的功能。由于目前成熟的数据库系统应用面向对象模型时没有脱离关系模型,因此有人称它为关系对象模型,也有人称为后关系模型,也就是关系模型的扩展。因此,到目前为止数据库模型主要是层次型、网络型和关系型三种。12/11/202216中文VisualFoxPro9.0数据库应用与开发教程4.面向对象模型(关系对象模型)12/10/2022161.3数据库系统1.3.1数据库数据库(DataBase,简称DB)是计算机系统对数据资源的一种管理技术,是存储在计算机内的有序结构的数据集合。其基本思想是对所有数据实行集中、统一、独立的管理,数据独立于应用程序而存在,并以最小的代价供各种不同的用户共享使用。数据库技术既克服了数据处理的初期阶段将应用程序与数据置于同一过程的原始数据处理方式的不足,又克服了文件系统管理方式下对数据采取的不具弹性的无结构的集合方法,以及数据冗余大、文件不易扩充的缺点。12/11/202217中文VisualFoxPro9.0数据库应用与开发教程1.3数据库系统1.3.1数据库12/10/202数据库中的数据层次单位有两类:逻辑单位与物理单位。逻辑单位从应用的角度出发观察数据,一般可分为数据项、数据项组、记录、文件和数据库。数据的物理单位是指数据在存储介质上的存储单位,一般可分为:位(比特)、字节、字、块(物理记录)和卷。数据库是多记录类型的具体值的集合,并包含记录、数据文件和数据文件之间的数据联系。12/11/202218中文VisualFoxPro9.0数据库应用与开发教程数据库中的数据层次单位有两类:逻辑单位与物理单位。逻1.3.2数据库管理系统数据库管理系统(DataBaseManagementSystem,简称DBMS)是一个帮助用户建立、使用和管理数据的软件系统。DBMS是数据库系统的中心枢纽,应用程序对数据库的全部操作通过DBMS进行,DBMS既是面向用户的,也是面向整个数据库系统的。学习使用数据库,就是学习某个DBMS的使用方法。在关系数据库领域中有许多DBMS,这些DBMS分为两类:一类属于大型数据库管理系统,如Sybase、Oracle、SQLServer等,另一类属于小型数据库管理系统,如Access、Dbase、FoxBase、VisualFoxPro等。大型数据库管理系统性能比较强大,功能比较完善,一般需要专人管理和维护,常用于大型数据库系统中,如飞机订票系统、银行系统等。小型数据库管理系统功能相对简单,容易掌握,使用也比较方便,一般用在不是很复杂的小型数据库系统中。
12/11/202219中文VisualFoxPro9.0数据库应用与开发教程1.3.2数据库管理系统12/10/202219中文V1.3.3数据库系统的特点数据库系统(DataBaseSystem,DBS)是指在计算机系统中引进数据库管理系统后的系统构成。数据库系统由数据库、数据库管理系统、数据库管理员和用户组成,其中数据库管理系统是数据库系统的核心组成部分。数据库系统的出现是计算机数据处理技术的重大进步,它具有以下特点。1.数据库系统的优点(1)数据结构化。不同的记录之间存在着联系,描述数据时不仅描述数据本身还要描述数据之间存在的联系,是数据库系统的本质特征。(2)数据共享。多个应用可以使用同一数据库、同一时刻多个用户可读取同一数据、开发新的应用而不用增加新的存储空间。12/11/202220中文VisualFoxPro9.0数据库应用与开发教程1.3.3数据库系统的特点12/10/202220中文(3)数据独立性。所谓数据独立是指应用程序不必随数据存储结构的改变而变动。数据独立包括数据的物理独立性和逻辑独立性。(4)数据的可控冗余度。从理论上讲,数据库中的数据可以完全避免冗余,但是为了提高系统的效率或网络的友好性,往往容许少量数据冗余,这种数据的冗余是可以人为控制的,所以称为可控冗余度。(5)数据一致性。由于数据采用相应方法进行组织,相互之间采用一定的机制进行相关约束,从而保障了数据的一致性。(6)数据安全性。数据库加入了安全保密机制,可以防止对数据的非法存取。另外,数据库系统还采取了一系列措施,来恢复对数据库的破坏。12/11/202221中文VisualFoxPro9.0数据库应用与开发教程(3)数据独立性。12/10/202221中文Vi2.数据库系统的缺点数据库系统也存在着不足,首先,建立数据库的费用较高。数据库系统软件和与之相联系的任何硬件都可能是昂贵的。其次,添加内容时变得复杂。数据库系统比文件系统管理复杂得多。从理论上讲,系统越复杂,就越容易失败,恢复也越困难。最后,数据风险集中化,数据集中存储,虽然减少了数据冗余,但集中存储也同样使数据损坏和丢失的风险增加了。一般应使这种风险降低到最小程度。12/11/202222中文VisualFoxPro9.0数据库应用与开发教程2.数据库系统的缺点12/10/202222中文Vis1.3.4数据库技术的发展1.第一代数据库系统第一代数据库系统是20世纪70年代研制的层次数据库和网状数据库系统。1969年,IBM公司研制了基于层次模型的数据库管理系统IMS(InformationManagementSystem)。美国数据库系统语言协会CODASYL(ConferenceOnDataSystemLanguage)下属的数据库任务组DBTG(DataBaseTaskGroup)对网络数据库方法进行了系统探讨,于20世纪60年代末70年代初提出了若干报告,称为DBTG报告。DBTG报告确定并建立了网络数据库系统的许多概念、方法和技术。它是网络数据库的典型代表。在DBTG方法和思想的指引下,网络数据库系统的实现技术不断成熟,出现了许多商品化的网络数据库管理系统。12/11/202223中文VisualFoxPro9.0数据库应用与开发教程1.3.4数据库技术的发展12/10/202223中文2.第二代数据库系统第二代数据库系统是关系型数据库系统。1970年IBM公司SanJose研究实验室的研究员E.F.Codd发表了题为“大型共享数据库的关系模型”的论文,提出了关系数据模型,开创了关系数据库方法和关系数据库理论,为关系数据库技术奠定了理论基础。70年代是关系数据库理论研究和原型系统开发的时代,其中以IBMSanJose实验室开发的SystemR和Berkeley加利福尼大学研究的IN-GRES为典型代表。经过大量的高层次研究和开发,关系数据库系统的研究取得了一系列的成果,主要包括:奠定了关系模型的理论基础;提出了关系数据语言;研制了大量的关系数据库系统原型,攻克了在系统实现中查询优化、并发控制、故障恢复等一系列关键技术。
12/11/202224中文VisualFoxPro9.0数据库应用与开发教程2.第二代数据库系统12/10/202224中文Vis20世纪70年代后期,关系数据库从实验室走向了社会。因此,计算机领域中很多人把20世纪70年代称为关系数据库时代。到20世纪80年代几乎所有新开发的数据库系统均是关系型的。这些数据库系统的运行,使数据库技术日益广泛地应用到企业管理、情报检索、辅助决策等各个方面,成为信息系统和多计算机应用系统的重要基础。12/11/202225中文VisualFoxPro9.0数据库应用与开发教程20世纪70年代后期,关系数据库从实验室走向了社会。3.第三代数据库系统20世纪80年代以来,数据库技术在商业领域的巨大成就刺激了其他领域对数据库需求的迅速增长。例如,计算机辅助设计与制造、计算机集成制造系统、办公自动化和面向对象程序设计环境等等。这些领域需要的数据管理能力有相当一部分是传统数据库所不能满足的,例如:(1)复杂对象的存储和处理。复杂对象不仅内部结构复杂,相互之间的联系也很复杂。(2)复杂数据类型的支持。复杂数据类型包括抽象数据类型、无结构的超长数据、时间、图形、图像、声音和版本数据等。(3)数据、对象、知识的统一管理。(4)长事务和嵌套事务的处理。(5)程序设计语言和数据库语言无间隙的集成。(6)巨型数据库(数据库可超过10的12次方字节)的管理。
12/11/202226中文VisualFoxPro9.0数据库应用与开发教程3.第三代数据库系统12/10/202226中文Vis1.4关系数据库1.4.1关系数据库概述1.关系模型的基本概念(1)字段(Field)。信息世界中的“属性”一词,在数据世界中使用数据项一词进行描述。从数据库的角度讲,数据项就是字段。从表格的角度讲,字段称为列。通常使用字段这一名词比较通俗。字段和属性一样,也用型和值表示。由此可见,字段与属性、列、数据项这些术语,所描述的对象都是相同的,只是在不同角度,所用不同而已。12/11/202227中文VisualFoxPro9.0数据库应用与开发教程1.4关系数据库1.4.1关系数据库概述12/10(2)记录(Record)。字段的有序集合称为记录,在关系模型中,记录称为元组。在表中记录称为一行。在概念模型也称为实体。换句话说,实体、记录、元组和行是不同角度描述同一对象的不同术语。记录也用型和值来描述。记录型是字段型的集合。记录值是字段值的集合。(3)表(Table)。表是关系数据库系统中的基本单位,是具有相同性质的元组的集合。表也分为型和值,表的型也称作关系模型,或者称为表结构,显然是由一系列属性所组成。表在关系模型理论中描述为一个关系。(4)关键字(KeyWords)。关系中能惟一区分和确定不同记录的字段或字段组合,称为关键字。单个字段组成的关键字称为单关键字,多个字段组合的关键字称为组合关键字。12/11/202228中文VisualFoxPro9.0数据库应用与开发教程(2)记录(Record)。12/10/202228(5)主关键字。主关键字也称为主键,当一个关系中有多个关键字的时候,可以选中其中一个关键字作为主关键字。(6)外关键字。在众多属性中,如果某个属性不是该关系的主关键字,但却是另一个关系的主关键字,则称这个关键字为外关键字。(7)关系数据库(RelationDB)。所谓关系数据库就是由若干个表组成的集合。换句话说,关系数据库至少有一个表,才能称之为数据库。现实中,关系数据库有若干个表有机地组合在一起,以满足某类应用系统的需要。
12/11/202229中文VisualFoxPro9.0数据库应用与开发教程(5)主关键字。12/10/202229中文Vis2.关系模型的特点除了具有一般数据库的共同的优点之外,关系模型具有如下特点:(1)数据结构简单,操作方便。在关系模型中使用人们通常使用的表格来描述,很接近实际,表间的关系用公共属性名表示,没有指针链接,简化了数据定义,操作也很方便。(2)一体化的数据子语言。在其他数据库系统的DBMS的子语言分为DDL、DML和DSDL,它们各自完成不同的功能,而关系数据子语言将这些功能合为一体,既可进行查询、更新等数据操作,又具有数据定义和控制功能,在进行数据操作时还可以动态地修改数据结构,使用方便,提高了编程效率。12/11/202230中文VisualFoxPro9.0数据库应用与开发教程2.关系模型的特点12/10/202230中文Visu(3)坚实的理论基础。关系数据模型建立在数学概念基础上,如集合论等,此外还有关系的规范化和查询优化等理论,这些研究成果是对数据库技术的研究从经验发展到科学的高度,给数据库技术的进一步研究奠定了基础。(4)面向集合的存取方式。关系数据库可以在关系一级进行运算,一次查询结果可以得到一组记录,对数据的其他操作也可以一次多个元组进行,其语言简练,非过程化程度高。此外,关系数据模型有利于开展数据库其他应用,例如关系数据库有强大的分解能力,有利于分布式数据库的实现,它为各种非预期查询提供支持,有利于决策支持系统的开发等等。当然关系数据模型也表现出一些不足,其中比较突出的是语义比较贫乏,处理多介质非格式化的数据(图像、图形、声音等)时显得力不从心。另外除了一些大型系统外,多个关系间的查询效率还是比较低的。
12/11/202231中文VisualFoxPro9.0数据库应用与开发教程(3)坚实的理论基础。12/10/202231中文3.关系的基本性质表格是日常使用比较广泛的一种数据表示方法,在关系模型中,将各种实体之间的联系都统一描述成一些二维表,即由若干行和若干列组成的表格。这些表格不但存放着实体本身的数据,而且还存放着实体之间的联系。在关系数据库中,一个关系实际上也就是一个二维表,也称作数据表。12/11/202232中文VisualFoxPro9.0数据库应用与开发教程3.关系的基本性质12/10/202232中文Visu1.4.2关系表之间的关联类型在一个关系数据库中,若想将依赖于关系模型建立的多个数据表组织在一起,反映客观事物数据间的多种对应关系,通常将这些数据表放入同一个数据库中,并建立表间关联。在同一个数据库中,表间关联关系的关联类型常有一对一、一对多和多对一3种。1.一对一关系一对一关系即在两个数据表中选一个相同属性字段作为关键字段,把其中一个数据表中的关键字段称为主关键字段,该字段值是惟一的,而另一个数据表中的关键字段称为外关键字段,该字段值也是惟一的。即A表中的每一条记录在B表中仅能有一个匹配记录,同样在B表中的每一条记录也只能在A表中有一个匹配记录。
12/11/202233中文VisualFoxPro9.0数据库应用与开发教程1.4.2关系表之间的关联类型12/10/202233中2.一对多关系一对多关系,即在两个数据表中选一个相同属性字段作为关键字段,把其中一个数据表的关键字段称为主关键字段,该字段值是惟一的,而把另一个数据表中的关键字段称为外关键字段,该字段值是重复的。即A表中的一条记录能与B表中的多个记录相匹配,但是B表中的一条记录仅能与A表中的一个记录匹配。3.多对一关系多对一关系与一对多关系是类似的,惟一的区别是在两个相关联的数据表中,选择哪一个数据表中的关键字段为主关键字段,该字段值是重复的,与它关联的另一个数据表中的关键字段为外关键字段,该字段值是惟一的。即A表中的一条记录仅能与B表中的一个记录匹配,但是B表中的一条记录能与A表中的多个记录相匹配。
12/11/202234中文VisualFoxPro9.0数据库应用与开发教程2.一对多关系12/10/202234中文Visual1.4.3关系的操作关系操作也叫做关系运算,是基于关系模型上的基础操作,但只是数据库操作中的一部分。关系操作属于集合运算范畴,为简单起见,下面仅从数据库操作的角度来说明关系操作的基本内容。在关系操作中,常见的关系操作包括投影操作、选择操作和连接操作3种。1.投影操作(Project)投影操作是从关系中选择某些字段的所有值组成一个新的关系。即是对一个关系在列的方向上进行选择,删除关系中的某些列,并按要求重新排列次序。12/11/202235中文VisualFoxPro9.0数据库应用与开发教程1.4.3关系的操作12/10/202235中文Vis2.选择操作(Select)选择操作是从关系中选择某些满足条件的记录组成一个新的关系。即是对一个关系在行的方向上进行选择,它把符合某个条件的元组选择出来,重新构成一个原关系的子集。3.连接操作(Join)连接操作是将两个或多个关系通过连接条件组成一个新的关系。即是从两个关系中选择属性间满足一定条件的元组,重新构成的一个关系。12/11/202236中文VisualFoxPro9.0数据库应用与开发教程2.选择操作(Select)12/10/202236中文1.4.4关系的完整性关系完整性即关系中数据以及具有关联关系的数据之间必须遵循的制约和依存关系,主要用于保证数据的正确性、有效性和相容性。关系模型的完整性规则主要有以下4种类型:实体完整性(EntityIntegrity)、域完整性(DomainIntegrity)、参照完整性(ReferentialIntegrity)和用户定义完整性(User-definedIntegrity)。1.实体完整性关系通常对应现实世界的一个实体集。现实世界中的实体是可区分的,即每个实体具有某种惟一性标识。相应地,在关系模型中以主关键字作为该实体记录的惟一标识。实体完整性规则要求主关键字中属性(即主属性)不能重复或取空值。12/11/202237中文VisualFoxPro9.0数据库应用与开发教程1.4.4关系的完整性12/10/202237中文Vi2.域完整性域完整性是指数据库表中的列(字段)必须满足某种特定的数据类型或约束。其中约束又包括取值范围、精度等规定。例如在成绩表中,规定成绩取值范围在0~100之间,这种约束称为域完整性约束。3.参照完整性参照完整性是指两个表的主关键字和外关键字的数据对应一致。它确保了有主关键字的表中对应其他表的外关键字的行存在,即保证了表之间的数据的一致性,防止了数据丢失或无意义的数据在数据库中扩散。参照完整性是建立在外关键字和主关键字之间或外关键字和惟一性关键字之间的关系上的。在关系模型中,实体与实体间的联系都是用关系来描述的,这样就自然存在着关系与关系间的引用。12/11/202238中文VisualFoxPro9.0数据库应用与开发教程2.域完整性12/10/202238中文Visual4.用户自定义完整性不同的关系数据库系统根据其应用环境的不同,往往还需要一些特殊的约束条件。用户定义的完整性即是针对某个特定关系数据库的约束条件,它反映了某一具体应用所涉及的数据必须满足的语义要求。关系模型(例如VisualFoxPro)提供定义和检验这类完整性的机制,以便用统一的系统方法来处理它们,不需要由应用程序承担这一功能,这样就降低了应用程序开发的难度。其他的完整性类型都支持用户定义的完整性。12/11/202239中文VisualFoxPro9.0数据库应用与开发教程4.用户自定义完整性12/10/202239中文Vis小结本章从信息和数据的概念出发,阐明了二者之间的关系:数据是信息的载体,信息是数据的内涵。计算机数据管理技术的发展经历了人工管理、文件系统和数据库系统三个阶段。数据库模型主要包括层次模型、网状模型、关系模型,分别介绍了这些模型的概念和特点,其中关系模型在目前的实际应用中居于绝对领导地位。对数据库、数据库管理系统和数据库系统等几个重要的概念进行了阐述,介绍了数据库技术发展的三个阶段及其特点。最后,对关系数据库以及其中的表间关系、关系操作运算、关系完整性的概念和类型等进行了详细说明。本章内容是数据库系统的基础原理,读者要认真理解和掌握。12/11/202240中文VisualFoxPro9.0数据库应用与开发教程小结本章从信息和数据的概念出发,阐明了二者之间的关最新01数据库基本原理课件01数据库基本原理01数据库基本原理第1章数据库基本原理数据库技术是计算机科学技术的一个重要分支,数据库技术的形成有两大推动力:首先是计算机技术的发展,计算机技术的发展为数据库的出现提供了技术基础;其次是现代社会数据和信息成几何级数增长,即所谓的信息爆炸。信息爆炸使得社会迫切需要一种技术来有效地管理数据,在技术和需求的推动下,形成了现代数据库技术。自1968年第一个商品化的数据库管理系统IMS问世以来,数据库技术得到迅速发展,已经成为信息管理、办公自动化、计算机辅助设计、决策支持等方面应用的主要手段,广泛应用于社会各个行业和领域。12/11/202243中文VisualFoxPro9.0数据库应用与开发教程第1章数据库基本原理数据库技术是计算机科学技术的最新01数据库基本原理课件最新01数据库基本原理课件最新01数据库基本原理课件最新01数据库基本原理课件最新01数据库基本原理课件最新01数据库基本原理课件1.2数据模型现实世界中的客观事物彼此联系,某一事物内部的联系,形成系统;系统之间联系,形成更大的系统。客观事物的这种普遍联系性,决定了作为事物属性记录符号的数据与数据之间也存在着一定的联系性。具有联系性的相关数据总是按照一定的组织关系排列,从而构成一定的结构,对这种结构的描述就是数据模型。从理论上讲,数据模型是指反映客观事物及客观事物间联系的数据组织的结构和形式。客观事物是千变万化的,表现各种客观事物的数据结构和形式也是千差万别的,尽管如此,它们之间还是有其共同性的。12/11/202250中文VisualFoxPro9.0数据库应用与开发教程1.2数据模型现实世界中的客观事物彼此联系,某1.2.1数据模型的组成要素一般地讲,数据模型是严格定义的概念的集合,这些概念精确描述了系统的静态特性、动态特性和完整性约束。因此,数据模型通常由数据结构、数据操作和数据约束3部分组成,这三个组成要素完整地描述了数据模型。1.数据结构数据结构是所研究的对象类型的集合,是数据库的组成部分。研究数据结构的任务是利用计算机系统的知识来描述客观世界的对象,以便能方便地进行处理。例如在关系结构中,使用表格数据结构来描述客观世界中的对象。12/11/202251中文VisualFoxPro9.0数据库应用与开发教程1.2.1数据模型的组成要素12/10/202210中文2.数据操作数据操作是指对数据库中各种对象(型)实例(值)允许执行的操作的集合,包括操作及操作规则。数据库操作主要包括检索和更新(包括插入、删除、修改等)两类操作。3.数据约束数据约束是指完整性规则的集合。完整性规则是给定的数据模型中数据及其联系所具有的制约和依存规则,用以限定符号数据模型的数据库状态及状态的变化,以保证数据的正确、有效和相容。12/11/202252中文VisualFoxPro9.0数据库应用与开发教程2.数据操作12/10/202211中文Visual1.2.2数据模型的分类数据模型先后经历了层次模型、网状模型、关系模型和面向对象模型几个阶段,其中,层次模型和网状模型统称为非关系模型,非关系模型在20世纪70年代至80年代初非常流行。现在,关系模型因为有着完整的理论基础,已经逐渐取代了层次模型和网状模型,在数据库产品中占据了主导地位。12/11/202253中文VisualFoxPro9.0数据库应用与开发教程1.2.2数据模型的分类12/10/202212中文V1.层次模型(HierarchicalModel)利用树型结构表示实体及其之间联系的模型称为层次模型。层次模型中的结点为记录型,表示某种类型的实体,结点之间的连线则表示了它们之间的关系。层次模型具有如下特点:(1)有且仅有一个结点无双亲结点,称为根结点。(2)根结点以外的其他结点有且仅有一个双亲结点。层次模型结构简单,层次清楚,查找的路径明显,但是它只能处理一对多的实体联系。12/11/202254中文VisualFoxPro9.0数据库应用与开发教程1.层次模型(HierarchicalModel)122.网状模型(NetworkModel)利用网状结构表示实体及其之间联系的模型称为网状模型。网状结构是层次模型的扩展,它表示多个从属关系的层次结构,呈现一种交叉关系的网络结构。网状模型是以记录为结点的网络结构,其典型代表是DBTG系统。网状模型具有如下特点:(1)可以有一个以上的结点无双亲结点。(2)至少有一个结点有多于一个的双亲结点。可以看出,网状模型去掉了层次模型的两个限制,因而可以描述更复杂的多对多的实体联系。层次模型是网状模型的特殊形式,网状模型是层次模型的一般形式。12/11/202255中文VisualFoxPro9.0数据库应用与开发教程2.网状模型(NetworkModel)12/10/23.关系模型(RelationalModel)用二维表结构表示实体以及实体之间联系的模型称为关系模型。关系模型把各种联系都统一描述成一些二维表,即由若干行和若干列组成的表格。每一个这样的二维表格就称为一个关系。在关系模型中常用的术语:(1)关系:一个关系对应着通常说的一个二维表,是具有相同性质的元组的集合。(2)元组:二维表中的一行称为一个元组,一个元组相当于一个记录。(3)属性:二维表中的一列称为一个属性,一个属性相当于一个字段。(4)域:属性的取值范围称作域。(5)分量:元组中的一个属性值称作分量。12/11/202256中文VisualFoxPro9.0数据库应用与开发教程3.关系模型(RelationalModel)12/14.面向对象模型(关系对象模型)20世纪90年代中期以来,人们发现关系模型的一些缺陷,提出了面向对象模型,引入了对象、类、属性、方法、事件等概念。面向对象模型一方面对数据结构方面的关系结构进行了改良,另一方面为数据操作引入了对象操作的概念和手段。如今的数据库管理系统基本上都提供了这方面的功能。由于目前成熟的数据库系统应用面向对象模型时没有脱离关系模型,因此有人称它为关系对象模型,也有人称为后关系模型,也就是关系模型的扩展。因此,到目前为止数据库模型主要是层次型、网络型和关系型三种。12/11/202257中文VisualFoxPro9.0数据库应用与开发教程4.面向对象模型(关系对象模型)12/10/2022161.3数据库系统1.3.1数据库数据库(DataBase,简称DB)是计算机系统对数据资源的一种管理技术,是存储在计算机内的有序结构的数据集合。其基本思想是对所有数据实行集中、统一、独立的管理,数据独立于应用程序而存在,并以最小的代价供各种不同的用户共享使用。数据库技术既克服了数据处理的初期阶段将应用程序与数据置于同一过程的原始数据处理方式的不足,又克服了文件系统管理方式下对数据采取的不具弹性的无结构的集合方法,以及数据冗余大、文件不易扩充的缺点。12/11/202258中文VisualFoxPro9.0数据库应用与开发教程1.3数据库系统1.3.1数据库12/10/202数据库中的数据层次单位有两类:逻辑单位与物理单位。逻辑单位从应用的角度出发观察数据,一般可分为数据项、数据项组、记录、文件和数据库。数据的物理单位是指数据在存储介质上的存储单位,一般可分为:位(比特)、字节、字、块(物理记录)和卷。数据库是多记录类型的具体值的集合,并包含记录、数据文件和数据文件之间的数据联系。12/11/202259中文VisualFoxPro9.0数据库应用与开发教程数据库中的数据层次单位有两类:逻辑单位与物理单位。逻1.3.2数据库管理系统数据库管理系统(DataBaseManagementSystem,简称DBMS)是一个帮助用户建立、使用和管理数据的软件系统。DBMS是数据库系统的中心枢纽,应用程序对数据库的全部操作通过DBMS进行,DBMS既是面向用户的,也是面向整个数据库系统的。学习使用数据库,就是学习某个DBMS的使用方法。在关系数据库领域中有许多DBMS,这些DBMS分为两类:一类属于大型数据库管理系统,如Sybase、Oracle、SQLServer等,另一类属于小型数据库管理系统,如Access、Dbase、FoxBase、VisualFoxPro等。大型数据库管理系统性能比较强大,功能比较完善,一般需要专人管理和维护,常用于大型数据库系统中,如飞机订票系统、银行系统等。小型数据库管理系统功能相对简单,容易掌握,使用也比较方便,一般用在不是很复杂的小型数据库系统中。
12/11/202260中文VisualFoxPro9.0数据库应用与开发教程1.3.2数据库管理系统12/10/202219中文V1.3.3数据库系统的特点数据库系统(DataBaseSystem,DBS)是指在计算机系统中引进数据库管理系统后的系统构成。数据库系统由数据库、数据库管理系统、数据库管理员和用户组成,其中数据库管理系统是数据库系统的核心组成部分。数据库系统的出现是计算机数据处理技术的重大进步,它具有以下特点。1.数据库系统的优点(1)数据结构化。不同的记录之间存在着联系,描述数据时不仅描述数据本身还要描述数据之间存在的联系,是数据库系统的本质特征。(2)数据共享。多个应用可以使用同一数据库、同一时刻多个用户可读取同一数据、开发新的应用而不用增加新的存储空间。12/11/202261中文VisualFoxPro9.0数据库应用与开发教程1.3.3数据库系统的特点12/10/202220中文(3)数据独立性。所谓数据独立是指应用程序不必随数据存储结构的改变而变动。数据独立包括数据的物理独立性和逻辑独立性。(4)数据的可控冗余度。从理论上讲,数据库中的数据可以完全避免冗余,但是为了提高系统的效率或网络的友好性,往往容许少量数据冗余,这种数据的冗余是可以人为控制的,所以称为可控冗余度。(5)数据一致性。由于数据采用相应方法进行组织,相互之间采用一定的机制进行相关约束,从而保障了数据的一致性。(6)数据安全性。数据库加入了安全保密机制,可以防止对数据的非法存取。另外,数据库系统还采取了一系列措施,来恢复对数据库的破坏。12/11/202262中文VisualFoxPro9.0数据库应用与开发教程(3)数据独立性。12/10/202221中文Vi2.数据库系统的缺点数据库系统也存在着不足,首先,建立数据库的费用较高。数据库系统软件和与之相联系的任何硬件都可能是昂贵的。其次,添加内容时变得复杂。数据库系统比文件系统管理复杂得多。从理论上讲,系统越复杂,就越容易失败,恢复也越困难。最后,数据风险集中化,数据集中存储,虽然减少了数据冗余,但集中存储也同样使数据损坏和丢失的风险增加了。一般应使这种风险降低到最小程度。12/11/202263中文VisualFoxPro9.0数据库应用与开发教程2.数据库系统的缺点12/10/202222中文Vis1.3.4数据库技术的发展1.第一代数据库系统第一代数据库系统是20世纪70年代研制的层次数据库和网状数据库系统。1969年,IBM公司研制了基于层次模型的数据库管理系统IMS(InformationManagementSystem)。美国数据库系统语言协会CODASYL(ConferenceOnDataSystemLanguage)下属的数据库任务组DBTG(DataBaseTaskGroup)对网络数据库方法进行了系统探讨,于20世纪60年代末70年代初提出了若干报告,称为DBTG报告。DBTG报告确定并建立了网络数据库系统的许多概念、方法和技术。它是网络数据库的典型代表。在DBTG方法和思想的指引下,网络数据库系统的实现技术不断成熟,出现了许多商品化的网络数据库管理系统。12/11/202264中文VisualFoxPro9.0数据库应用与开发教程1.3.4数据库技术的发展12/10/202223中文2.第二代数据库系统第二代数据库系统是关系型数据库系统。1970年IBM公司SanJose研究实验室的研究员E.F.Codd发表了题为“大型共享数据库的关系模型”的论文,提出了关系数据模型,开创了关系数据库方法和关系数据库理论,为关系数据库技术奠定了理论基础。70年代是关系数据库理论研究和原型系统开发的时代,其中以IBMSanJose实验室开发的SystemR和Berkeley加利福尼大学研究的IN-GRES为典型代表。经过大量的高层次研究和开发,关系数据库系统的研究取得了一系列的成果,主要包括:奠定了关系模型的理论基础;提出了关系数据语言;研制了大量的关系数据库系统原型,攻克了在系统实现中查询优化、并发控制、故障恢复等一系列关键技术。
12/11/202265中文VisualFoxPro9.0数据库应用与开发教程2.第二代数据库系统12/10/202224中文Vis20世纪70年代后期,关系数据库从实验室走向了社会。因此,计算机领域中很多人把20世纪70年代称为关系数据库时代。到20世纪80年代几乎所有新开发的数据库系统均是关系型的。这些数据库系统的运行,使数据库技术日益广泛地应用到企业管理、情报检索、辅助决策等各个方面,成为信息系统和多计算机应用系统的重要基础。12/11/202266中文VisualFoxPro9.0数据库应用与开发教程20世纪70年代后期,关系数据库从实验室走向了社会。3.第三代数据库系统20世纪80年代以来,数据库技术在商业领域的巨大成就刺激了其他领域对数据库需求的迅速增长。例如,计算机辅助设计与制造、计算机集成制造系统、办公自动化和面向对象程序设计环境等等。这些领域需要的数据管理能力有相当一部分是传统数据库所不能满足的,例如:(1)复杂对象的存储和处理。复杂对象不仅内部结构复杂,相互之间的联系也很复杂。(2)复杂数据类型的支持。复杂数据类型包括抽象数据类型、无结构的超长数据、时间、图形、图像、声音和版本数据等。(3)数据、对象、知识的统一管理。(4)长事务和嵌套事务的处理。(5)程序设计语言和数据库语言无间隙的集成。(6)巨型数据库(数据库可超过10的12次方字节)的管理。
12/11/202267中文VisualFoxPro9.0数据库应用与开发教程3.第三代数据库系统12/10/202226中文Vis1.4关系数据库1.4.1关系数据库概述1.关系模型的基本概念(1)字段(Field)。信息世界中的“属性”一词,在数据世界中使用数据项一词进行描述。从数据库的角度讲,数据项就是字段。从表格的角度讲,字段称为列。通常使用字段这一名词比较通俗。字段和属性一样,也用型和值表示。由此可见,字段与属性、列、数据项这些术语,所描述的对象都是相同的,只是在不同角度,所用不同而已。12/11/202268中文VisualFoxPro9.0数据库应用与开发教程1.4关系数据库1.4.1关系数据库概述12/10(2)记录(Record)。字段的有序集合称为记录,在关系模型中,记录称为元组。在表中记录称为一行。在概念模型也称为实体。换句话说,实体、记录、元组和行是不同角度描述同一对象的不同术语。记录也用型和值来描述。记录型是字段型的集合。记录值是字段值的集合。(3)表(Table)。表是关系数据库系统中的基本单位,是具有相同性质的元组的集合。表也分为型和值,表的型也称作关系模型,或者称为表结构,显然是由一系列属性所组成。表在关系模型理论中描述为一个关系。(4)关键字(KeyWords)。关系中能惟一区分和确定不同记录的字段或字段组合,称为关键字。单个字段组成的关键字称为单关键字,多个字段组合的关键字称为组合关键字。12/11/202269中文VisualFoxPro9.0数据库应用与开发教程(2)记录(Record)。12/10/202228(5)主关键字。主关键字也称为主键,当一个关系中有多个关键字的时候,可以选中其中一个关键字作为主关键字。(6)外关键字。在众多属性中,如果某个属性不是该关系的主关键字,但却是另一个关系的主关键字,则称这个关键字为外关键字。(7)关系数据库(RelationDB)。所谓关系数据库就是由若干个表组成的集合。换句话说,关系数据库至少有一个表,才能称之为数据库。现实中,关系数据库有若干个表有机地组合在一起,以满足某类应用系统的需要。
12/11/202270中文VisualFoxPro9.0数据库应用与开发教程(5)主关键字。12/10/202229中文Vis2.关系模型的特点除了具有一般数据库的共同的优点之外,关系模型具有如下特点:(1)数据结构简单,操作方便。在关系模型中使用人们通常使用的表格来描述,很接近实际,表间的关系用公共属性名表示,没有指针链接,简化了数据定义,操作也很方便。(2)一体化的数据子语言。在其他数据库系统的DBMS的子语言分为DDL、DML和DSDL,它们各自完成不同的功能,而关系数据子语言将这些功能合为一体,既可进行查询、更新等数据操作,又具有数据定义和控制功能,在进行数据操作时还可以动态地修改数据结构,使用方便,提高了编程效率。12/11/202271中文VisualFoxPro9.0数据库应用与开发教程2.关系模型的特点12/10/202230中文Visu(3)坚实的理论基础。关系数据模型建立在数学概念基础上,如集合论等,此外还有关系的规范化和查询优化等理论,这些研究成果是对数据库技术的研究从经验发展到科学的高度,给数据库技术的进一步研究奠定了基础。(4)面向集合的存取方式。关系数据库可以在关系一级进行运算,一次查询结果可以得到一组记录,对数据的其他操作也可以一次多个元组进行,其语言简练,非过程化程度高。此外,关系数据模型有利于开展数据库其他应用,例如关系数据库有强大的分解能力,有利于分布式数据库的实现,它为各种非预期查询提供支持,有利于决策支持系统的开发等等。当然关系数据模型也表现出一些不足,其中比较突出的是语义比较贫乏,处理多介质非格式化的数据(图像、图形、声音等)时显得力不从心。另外除了一些大型系统外,多个关系间的查询效率还是比较低的。
12/11/202272中文VisualFoxPro9.0数据库应用与开发教程(3)坚实的理论基础。12/10/202231中文3.关系的基本性质表格是日常使用比较广泛的一种数据表示方法,在关系模型中,将各种实体之间的联系都统一描述成一些二维表,即由若干行和若干列组成的表格。这些表格不但存放着实体本身的数据,而且还存放着实体之间的联系。在关系数据库中,一个关系实际上也就是一个二维表,也称作数据表。12/11/202273中文VisualFoxPro9.0数据库应用与开发教程3.关系的基本性质12/10/202232中文Visu1.4.2关系表之间的关联类型在一个关系数据库中,若想将依赖于关系模型建立的多个数据表组织在一起,反映客观事物数据间的多种对应关系,通常将这些数据表放入同一个数据库中,并建立表间关联。在同一个数据库中,表间关联关系的关联类型常有一对一、一对多和多对一3种。1.一对一关系一对一关系即在两个数据表中选一个相同属性字段作为关键字段,把其中一个数据表中的关键字段称为主关键字段,该字段值是惟一的,而另一个数据表中的关键字段称为外关键字段,该字段值也是惟一的。即A表中的每一条记录在B表中仅能有一个匹配记录,同样在B表中的每一条记录也只能在A表中有一个匹配记录。
12/11/202274中文VisualFoxPro9.0数据库应用与开发教程1.4.2关系表之间的关联类型12/10/202233中2.一对多关系一对多关系,即在两个数据表中选一个相同属性字段作为关键字段,把其中一个数据表的关键字段称为主关键字段,该字段值是惟一的,而把另一个数据表中的关键字段称为外关键字段,该字段值是重复的。即A表中的一条记录能与B表中的多
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- Unit 5 Old toys Part B Read and write 课件 2024-2025学年人教PEP版英语三年级下册
- 《电机控制》课件-任务三 三相异步电动机的运行
- 音乐广播稿(15篇)
- 店铺分成管理方案(3篇)
- 2018-2022北京高中合格考生物汇编:基因突变及其他变异
- 冷库租赁措施方案(3篇)
- 菜场设计定位方案(3篇)
- 茶楼露台改造方案(3篇)
- 施工方案规范(3篇)
- 湖南国防工业职业技术学院《微生物与免疫学》2023-2024学年第二学期期末试卷
- 能源计量器具配备和管理
- 《食品经营许可证》申请报告书空白模板
- 试卷交接签字单
- 有限空间作业及应急物资清单
- DB13(J)∕T 8060-2019 城镇供热管道及设备安装工程施工质量验收标准
- 《国际商务》课程
- 压力容器设计管理制度
- 比亚迪员工手册54
- 国际经济学期末考试试题库含答案
- 应力波理论复习资料
- 体育场地与设施
评论
0/150
提交评论