数据库理论基础.ppt

上传人:牧羊曲112 文档编号:5270378 上传时间:2023-06-21 格式:PPT 页数:54 大小:568.50KB
返回 下载 相关 举报
数据库理论基础.ppt_第1页
第1页 / 共54页
数据库理论基础.ppt_第2页
第2页 / 共54页
数据库理论基础.ppt_第3页
第3页 / 共54页
数据库理论基础.ppt_第4页
第4页 / 共54页
数据库理论基础.ppt_第5页
第5页 / 共54页
点击查看更多>>
资源描述

《数据库理论基础.ppt》由会员分享,可在线阅读,更多相关《数据库理论基础.ppt(54页珍藏版)》请在三一办公上搜索。

1、第6章 数据库理论基础,6.1 数据管理技术的发展及各阶段的特点 6.2 数据模型 6.3 关系数据库理论 6.4 数据库系统结构,2023/6/21,2,6.1 数据管理技术的发展及各阶段的特点,人工管理、文件管理、数据库系统、分布式数据库、面向对象数据库,2023/6/21,3,产生的时期40年代中-50年代中产生的背景应用需求 科学计算硬件水平 无直接存取存储设备软件水平 没有操作系统处理方式 批处理特点数据不保存数据由应用程序管理数据不具备独立性和共享性,人工管理阶段,2023/6/21,4,产生的时期50年代末-60年代中产生的背景应用需求科学计算、信息管理硬件水平磁盘、磁鼓软件水平

2、高级语言和操作系统(有文件系统)处理方式联机实时处理、批处理特点数据可以长期保存数据由文件系统管理数据独立性共享性差冗余度大容易产生数据不一致,文件管理阶段,2023/6/21,5,对所有数据实行统一的、集中地、独立的管理,使数据存储独立于使用数据的程序,实现数据共享产生的时期20世纪60年代后期开始产生的背景应用背景大规模管理硬件背景大容量磁盘软件背景有数据库管理系统处理方式联机实时处理,分布处理,批处理特点数据结构化数据由DBMS管理和控制数据共享性和独立性高,数据库系统管理阶段,Database Management System数据库管理系统,2023/6/21,6,用户,数据库应用程

3、序,DBMS,数据库,数据库应用的一般结构,2023/6/21,7,6.2 数据模型,数据库不仅要反映数据本身的内容,而且要反映数据之间的联系。因此必须把具体事物转换为计算机能处理的数据形式,这个转换过程就是建立模型的过程。数据库系统使用这些数据模型定义、组织和操纵数据库中的数据。,2023/6/21,8,根据应用目的,模型分为两个层次:概念模型(信息模型)独立于计算机实现的,只用来描述和组织所关心的信息结构的概念数据模型对应于信息世界数据模型(结构数据模型)直接面向计算机系统的,描述数据库中数据的逻辑结构的基本数据模型对应于数据世界,数据模型的概念,2023/6/21,9,信息世界中的基本概

4、念(1)实体(Entity):客观存在且相互区别的事物(2)实体集(Entity Set):具有相同特征的实体的集合(3)属性(Attribute):实体所具有的特征(等同于字段)(4)关键字(Key):唯一能标识实体的属性(5)域(Domain):属性的取值范围(6)实体型(Entity Type):用实体名及其属性名描述同一类实体,概念模型,2023/6/21,10,概念模型反映实体型及其联系的结构形式联系(Relationship):两类实体内部的联系:各属性之间的联系实体之间的联系:不同实体集之间的联系 建立概念模型的关键是分析实体间的相互联系两个实体型之间的联系可分为三类:1对1联系

5、(1:1)1对多联系(1:n)多对多联系(m:n),概念模型,2023/6/21,11,定义:若对于实体集A中的每一个实体,实体集B中至多有一个实体与之联系,反之亦然,则称实体集A与实体集B具有一对一联系,记为1:1。,1对1联系,2023/6/21,12,定义:若对于实体集A中的每一个实体,实体集B中有n个实体(n0)与之联系,反之,对于实体集B中的每一个实体,实体集A中至多只有一个实体与之联系,则称实体集A与实体集B具有一对多联系,记为1:n。,1对多联系,2023/6/21,13,定义:若对于实体集A中的每一个实体,实体集B中有n个实体(n0)与之联系,反之,对于实体集B中的每一个实体,

6、实体集A中也有m个实体(m0)与之联系,则称实体集A与实体集B具有多对多联系,记为m:n。,多对多联系,2023/6/21,14,数据模型的三要素数据结构(最重要)数据操作检索更新(删除、插入、更改)数据的完整性约束,数据模型,2023/6/21,15,当前流行的基本数据模型有4类:层次模型(树)网状模型(图)关系模型(Relational Model)(表)面向对象模型(对象、类、封装、继承),数据模型的分类,数据模型,2023/6/21,16,最早使用的一种模型;数据结构是一棵有向树,层次模型,2023/6/21,17,数据结构是一个有向图;能表示实体之间的多种复杂联系。缺点:编写应用程序

7、比较复杂,需熟悉数据库的逻辑结构,网状模型,2023/6/21,18,数据的逻辑结构是二维表1970年IBM首次提出,80年代以来推出的数据库管理系统几乎都支持关系模型,是最广泛的一种数据模型。市场上典型的关系DBMS产品:DB2,ORACLE,SYBASE,SQL Server,Informix等微机型产品:Foxpro,Access等,关系模型,2023/6/21,19,(1)字段(field)标记实体属性的命名单位称为字段,或数据项。(2)记录(record)字段的有序集合称为记录(3)文件(file)同一类记录的集合称为文件(4)关键码(key)能惟一标识文件中每个记录的字段或字段集,

8、称为记录的关键码(简称为键),数据模型中基本术语,关系的定义关系模型的常用术语关系代数关系的完整性,6.3 关系数据库理论基础,2023/6/21,21,1域(Domain)2笛卡尔积(Cartesian Product)3关系(Relation),关系模型是由关系数据结构、关系操作与关系完整性组成。,基本概念:,关系的定义,2023/6/21,22,域是一组具有相同数据类型的值的集合。例如:整数、实数、字符串、大于0且小于500的整数“男”,“女”,域(Domain),2023/6/21,23,给定一组域D1,D2,Dn,则D1,D2,Dn的笛卡尔积表示为:D1D2Dn=(d1,d2,dn)

9、|diDi,i=1,2,n 其中每一个(d1,d2,dn)叫作一个n元组或简称元组,元组中的每一个值di叫作一个分量笛卡尔积可以表示为一张二维表表中每一行即对应一个元组表中的每一列对应一个域,笛卡尔积(Cartesian Product),2023/6/21,24,D1=男人集合Man=王兵,李军,张伟D2=女人集合Woman=丁梅,吴芳D3=孩子集合Children=王一,李一,李二,D1D2D3=(王兵,丁梅,王一),(王兵,丁梅,李一),(王兵,丁梅,李二),(王兵,吴芳,王一),(王兵,吴芳,李一),(王兵,吴芳,李二),(李军,丁梅,王一),(李军,丁梅,李一),(李军,丁梅,李二)

10、,(李军,吴芳,王一),(李军,吴芳,李一),(李军,吴芳,李二),(张伟,丁梅,王一),(张伟,丁梅,李一),(张伟,丁梅,李二),(张伟,吴芳,王一),(张伟,吴芳,李一),(张伟,吴芳,李二)3X2X3=18个元组 就是一张二维表,例如:给出三个域:,2023/6/21,25,该D1,D2,D3的笛卡尔积的基数=323=18,即有18个元组,这18个元组可以组成一张二维表。,2023/6/21,26,D1D2Dn的子集叫作在域D1,D2,Dn上的关系,表示为:R(D1,D2,Dn)。其中R表示关系名,n是关系的度。关系是笛卡尔积的有限子集,所以关系也是一张二维表。表中的每列对应一个域,表

11、中的每行对应一个元组。由于域可以相同,为了加以区分,必须给每列起一个名字,称为属性。,关系 Relation,2023/6/21,27,例如针对Man、Woman、Children集合,存在这样事实:王兵与丁梅是一对夫妻,拥有子女王一;李军和吴芳是一对夫妻,拥有李一和李二两个子女,则从原笛卡尔积中可以得到一个子集R:R=(王兵,丁梅,王一),(李军,吴芳,李一),(李军,吴芳,李二)R即称为一个关系,若将该关系命名为Family,可得到二维表6-3。,子集R的例子:,2023/6/21,28,关系Family,2023/6/21,29,(1)关系中每一列的值都是同一类型的数据,来自同一个域。(

12、2)关系中不同的列可以对应同一个域,但必须给予不同的属性名。(3)关系中任意两个元组不能完全相同。(4)关系中元组的次序可以随意交换。(5)关系中列的次序可以任意交换。(6)关系中每一个分量必须是不可分的数据项。,关系具有以下性质,2023/6/21,30,高雪,高雪,关系模型的常用术语,2023/6/21,31,关系:即二维表格。元组:表中的一行。属性:表中的一列,通常每列有一个列名,即属性名,例如三个属性:部门编号、部门和系主任。主键:表中可以惟一确定一个元组的属性组,如表中部门编号,只要给定一个确定的部门编号,就可以确定该部门的部门名称及电话等其它属性值。注意:主键可以是一个属性,也可能

13、由几个属性构成。域:属性的取值范围。例如:属性“性别”的域是“男”、“女”关系模式:对关系的描述,其表示形式为:关系名(属性1,属性2,属性n)例如表的关系可描述为:系部一览(部门编号、部门、系主任),关系模式是型;而关系是值,2023/6/21,32,关系代数是由一组以关系作为运算对象的特定运算组成的。是关系数据操纵语言的一种传统表达方式,关系代数的运算对象是关系,运算结果也为关系。(1)传统的集合运算已知集合R、S并(R S):同属于R、S的元组的集合差(R-S):属于R 而不属于S 的所有元组组成的集合交(R S):同时属于R、S 的元组组成的集合笛卡尔积(R S):关系中的元组为每一个

14、R中的元组与所有的S 中的元组的组合,关系的操作常用:代数方式或逻辑方式(关系代数)(关系演算),关系代数(关系的操作),2023/6/21,33,例:已知关系R、S和T如表6-7、6-8及6-9所示,求出RS、RS、R-S和RT。,表6-7 关系R,2023/6/21,34,例:已知关系R、S和T如表6-7、6-8及6-9所示,求出RS、RS、R-S和RT。,2023/6/21,35,例:已知关系R、S和T如表6-7、6-8及6-9所示,求出RS、RS、R-S和RT。,2023/6/21,36,例:已知关系R、S和T如表6-7、6-8及6-9所示,求出RS、RS、R-S和RT。,2023/6

15、/21,37,例:已知关系R、S和T如表6-7、6-8及6-9所示,求出RS、RS、R-S和RT。,2023/6/21,38,(2)专门的关系运算(4种),投影:投影可看作是对一个表的垂直分割,提供了交换列的次序和构造新的关系的方法。选择:从关系R中选取使逻辑表达式F为真的元组,它是对关系的水平分割。连接:连接是从两个笛卡尔积中选取属性间满足一定条件的元组。(等值连接、自然连接)除运算:由属于R但不属于S的所有属性组成,且P的任意元组与关系S组合后成为R中原有的一个元组。,关系代数(关系的操作),2023/6/21,39,关系R上的投影是从R中选择若干属性列组成新的关系,记作:A(R)=tA|

16、tR 其中A为R中的属性列 投影可看作是对一个表的垂直分割,投影,2023/6/21,40,例:已知关系S如表6-8所示,计算出A,C(S)。,注意:关系中任意两个元组不能完全相同,因此进行投影运算后得到的关系应消去重复元组。,2023/6/21,41,选择是在关系R中选择满足给定条件的元组,记作:F(R)=t|t R F(t)=真 其中F表示选择条件,它是一个逻辑表达式,取逻辑值“真”或“假”。F是由比较运算符或逻辑运算符连接组成的表达式,运算对象可以是常量、变量(属性名)或简单函数,属性名也可以用其序号来代替。选择运算实际上就是从关系R中选取使逻辑表达式F为真的元组,它是对关系的水平分割。

17、,选择,2023/6/21,42,例:已知关系S如表6-8所示,计算出A=A1(S)。,2023/6/21,43,连接是从两个关系的笛卡尔积中选取属性间满足一定条件的元组,记作:其中A和B分别是R和S上的属性组,在A和B中包含的属性数相同且可比。为比较运算符。等值连接时,为“=”。自然连接是一种特殊的等值连接,要求两个关系中进行等值比较的分量必须是相同的属性组,并且在结果中去掉重复的属性列。,连接,等值连接、自然连接,2023/6/21,44,例:已知关系R 关系S如表6-16和表6-17所示,计算出RS。,2023/6/21,45,设关系R(X,Y)和S(Y,Z),其中X,Y,Z为属性组。R

18、中的Y与S中的Y为对应的属性,可以有不同的属性名,但必须出自相同的域集。则R与S的除运算得到一个新的关系P(X),记作:RS的属性由属于R但不属于S的所有属性组成,且RS的任一元组与关系S组合后都成为R中原有的一个元组。,除,2023/6/21,46,例:已知关系R、S1和S2如表6-19、表6-20和表6-21所示,计算出RS1及R S2。,2023/6/21,47,例:已知关系R、S1和S2如表6-19、表6-20和表6-21所示,计算出RS1及R S2。,2023/6/21,48,实体完整性 主键的属性的值不能为空值参照完整性 是多个关系间属性引用的一种限制。保证了两个关系间的正确联系。

19、用户自定义完整性 根据数据库系统应用环境需要而形成的一些特殊约束条件。如预订同一班航班人数不得超过飞机定员数。,关系的完整性,2023/6/21,49,参照完整性例子,2023/6/21,50,数据库系统的三级模式(数据抽象的三个级别)外模式(用户模式)数据库使用者能看见和使用的数据的局部逻辑结构和特性的描述模式(逻辑模式)(概念模式)数据库中全体数据的全局逻辑结构和特性的描述内模式(存储模式)数据在数据库系统中的内部表示,即数据的物理结构和存储方式的描述数据库系统的两级映像外模式/模式映像模式/内模式映像,6.4 数据库系统结构,2023/6/21,51,数据库系统的三级模式结构,2023/

20、6/21,52,本章习题,1、数据库管理系统是一种。A)采用了数据库技术的计算机系统B)包括数据库管理人员、计算机软硬件以及数据库系统 C)位于用户与操作系统之间的一层数据管理软件D)包括操作系统在内的数据管理软件系统2、数据库是相关数据的集合,它不仅包括数据本身,而且包括 A)数据之间的联系 B)数据安全 C)数据控制 D)数据操纵3、数据模型是对实际事物的数据特征进行抽象来描述事物及事物之间的关系的。数据模型主要有关系模型、层次模型和。A)网状模型 B)E_R模型 C)树状结构 D)实体模型4、在一个结构化的数据集合中,有且仅有一个结点无父结点,其他结点有且仅有一个父结点,该数据集合的数据

21、模型是 A)面向对象模型 B)关系模型 C)层次模型 D)网状模型,一、单项选择题,C,A,A,C,2023/6/21,53,本章习题,5、一个关系相当于一张二维表,二维表中的表头相当于该关系的 A)数据项 B)元组 C)型 D)属性6、在关系理论中,如果一个关系中的一个属性或属性组能够唯一地标识一个元组,那么可称该属性或属性组为 A)索引码 B)关键字 C)域 D)关系名7、设“职工档案”数据表中有职工编号、姓名、年龄、职务、籍贯等字段,其中可作为关键字的字段是。A)职工编号 B)姓名 C)年龄 D)职务型8、在已知教学环境中,一名学生可以选择多门课程,一门课程可以被多名学生选择,这说明学生数据与课程数据之间存在 的联系 A)一对一 B)一对多 C)多对多 D)未知,C,B,A,C,2023/6/21,54,本章习题,1、现实世界中客观存在并且可以 的事物被称为实体,同类实体的集合被称为。2、在关系中,一个属性的取值范围叫做3、当前数据库系统的主流是 型数据库系统。4、数据模型通常由、和 三部分组成。5、数据库管理技术经历了人工管理阶段、和 三个发展阶段。,二、填空题,相互区别,域,关系,实体集,数据结构,数据完整性约束,数据操作,文件管理,数据库,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号