第2章+关系模型.ppt
《第2章+关系模型.ppt》由会员分享,可在线阅读,更多相关《第2章+关系模型.ppt(105页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、欢迎你向我提问!欢迎你向我提问!E-mail:如果你在学习中遇到问题如果你在学习中遇到问题数据库原理与应用数据库原理与应用Principle and Application of DataBase 12/21/20221兰州理工大学计算机与通信学院数据库原理与应用数据库原理与应用Principle and Application of DataBase 第二章 关系模型u 2.1 关系模型的基本概念 u 2.2 关系代数 u 2.3 关系演算 u 2.4关系系统的十二条准则 u 2.5 关系系统的查询优化 u 2.6 关系数据库管理系统简介 u 2.7 小结12/21/20222兰州理工大学计
2、算机与通信学院数据库原理与应用数据库原理与应用Principle and Application of DataBase 关系模型是目前最流行并且是最重要的数据模型。自关系模型是目前最流行并且是最重要的数据模型。自从从E EF FCoddCodd于于19701970年提出关系模型以来,已占有了年提出关系模型以来,已占有了相当重要的地位,相对于以前的层次模型和网状模型,相当重要的地位,相对于以前的层次模型和网状模型,关系数据模型在许多方面对以前的数据模型进行了改进,关系数据模型在许多方面对以前的数据模型进行了改进,这些改进简化了数据管理、数据检索等工作。这些改进简化了数据管理、数据检索等工作。1
3、2/21/20223兰州理工大学计算机与通信学院数据库原理与应用数据库原理与应用Principle and Application of DataBase 第二章 关系模型u 2.1 关系模型的基本概念 u 2.2 关系代数 u 2.3 关系演算 u 2.4关系系统的十二条准则 u 2.5 关系系统的查询优化 u 2.6 关系数据库管理系统简介 u 2.7 小结12/21/20224兰州理工大学计算机与通信学院 关系模型的组成:数据结构关系模型的组成:数据结构+关系操作关系操作+完整性约束完整性约束表表结构结构 8个运算个运算 三类完整性三类完整性关系代数语言关系代数语言关系演算语言关系演算语
4、言SQL语言语言实体完整性实体完整性参照完整性参照完整性自定义完整性自定义完整性数据库技术数据库技术C Concept and oncept and T Technology of echnology of D DataBaseataBase 12/21/20225兰州理工大学计算机与通信学院数据库原理与应用数据库原理与应用Principle and Application of DataBase 关系模型是目前广泛应用的一种数据模型。关系模型关系模型是目前广泛应用的一种数据模型。关系模型中涉及到的基本元素包括关系、关系操作以及对关系的中涉及到的基本元素包括关系、关系操作以及对关系的完整性约束
5、条件。完整性约束条件。关系关系 关系关系是是关系模型的数据结构关系模型的数据结构。在关系模型中,在关系模型中,数据数据用关系来表示,数据之间的联系仍用关系来表示,对数用关系来表示,数据之间的联系仍用关系来表示,对数据的操作就是对关系的运算,而且关系运算的结果还是据的操作就是对关系的运算,而且关系运算的结果还是关系。关系。通俗地讲,关系就是一张二维表,如下所示:通俗地讲,关系就是一张二维表,如下所示:12/21/20226兰州理工大学计算机与通信学院数据库原理与应用数据库原理与应用Principle and Application of DataBase 编号姓名性别年龄职称部门20030500
6、1李男47教授计通200305002张男43副教授计通200305003李女35副教授计通200305004王女35讲师计通表中的每一行称为元组,指关系表所表示对象的实例表中的每一列称为属性。列标题是属性名该列属性的值,称为分量12/21/20227兰州理工大学计算机与通信学院数据库原理与应用数据库原理与应用Principle and Application of DataBase 关系的形式化定义关系的形式化定义(从集合论的角度)(从集合论的角度)(1)域 域是一组具有相同数据类型的值的集合。(2)笛卡尔积 给定一组域 ,这些域中可以有相同的。的笛卡尔积为:其中每一个元素 叫作一个n元组或简
7、称元组。元素中每一个值 叫作一个分量。若 为有限集,其基数为 ,则12/21/20228兰州理工大学计算机与通信学院数据库原理与应用数据库原理与应用Principle and Application of DataBase 的基数M为:()关系 的子集称作域上的关系,表示为:。这里R表示关系的名字,n是关系的目或度。当n=1时,称该关系为单元关系。当n=2时,称该关系为二元关系。12/21/20229兰州理工大学计算机与通信学院数据库原理与应用数据库原理与应用Principle and Application of DataBase 关系可分为以下三种类型:基本表:实际存在的表,它是实际存储数
8、据的逻辑表示。查询表:查询结果对应的表。视图表:由基本表或其他视图表导出的表,是虚表,不对应实际存储的数据。12/21/202210兰州理工大学计算机与通信学院数据库原理与应用数据库原理与应用Principle and Application of DataBase 关系模式和关系数据库 关系模式是对关系表中每个列的描述。关系模式需要给出关系名、每个属性的名称、属性的域及属性和域之间的映射关系。教师关系表对应的关系模式可以描述为:教师(编号,姓名,性别,年龄,职称,部门)关系数据库是对应于一个关系模型的某应用领域全部关系的集合。它是基于关系模型的数据库。12/21/202211兰州理工大学计算
9、机与通信学院数据库原理与应用数据库原理与应用Principle and Application of DataBase 码 码是关系模型完整性约束的一个体现。在一个关系中,若某一属性集合的值可唯一地标识每一个元组,即其值对不同的元组是不同的,这样的最小属性集合称为候选码(Candidate key),简称为码(Key)。若一个关系中有多个候选码,则选定其中一个作为主码(Primary key)。在定义关系模式时,为了体现出关系的主码,通常在选为主码的属性下面加下划线。例如教师关系:教师(编号,姓名,性别,年龄,职称,部门)12/21/202212兰州理工大学计算机与通信学院数据库原理与应用数据
10、库原理与应用Principle and Application of DataBase 关系操作关系数据模型定义了关系上的一组操作,常用的关系操作包括查询(Query)操作和插入(Insert)、删除(Delete)、修改(Update)操作。关系的查询表达能力很强,是关系操作中最主要的部分。查询操作可以分为:选择、投影、连接、除、并、差、交、笛卡尔积等。关系操作的特点是集合操作方式,即操作的对象和结果都是集合。12/21/202213兰州理工大学计算机与通信学院数据库原理与应用数据库原理与应用Principle and Application of DataBase 关系的完整性规则 关系模
11、型的完整性规则是对关系的某种约束条件,目的在于控制并确保数据内容的有效性和一致性。关系模型的完整性规则包括实体完整性、参照完整性和用户自定义的完整性。实体完整性规则 在关系表中,所有元组主码的值都不能为空。下面的教师表违背了实体完整性规则 12/21/202214兰州理工大学计算机与通信学院数据库原理与应用数据库原理与应用Principle and Application of DataBase 编号姓名性别年龄职称部门200305001李男47教授计通张男43副教授计通200305003李女35副教授计通王女35讲师计通参照完整性 在关系模型中,采用给关系定义外键的形式进行关系间属性的引用,
12、从而实现参照完整性。外键,也称为外码。它是关系的一组属性,但不是主码属性,它的取值与另外一个关系中主码属性的取值相匹配,也就是说,属性的数目以及数据类型都要相同。12/21/202215兰州理工大学计算机与通信学院数据库原理与应用数据库原理与应用Principle and Application of DataBase 例2.1教师和研究生可以用下面的关系来表示,其中主码用下划线标识:教师(编号,姓名,性别,年龄,职称,部门)研究生(学号,姓名,导师编号,导师姓名,专业)教 师 信 息 表PK 编号 姓名 性别 年龄 职称 部门研究生信息表PK 学号 姓名 导师编号 导师姓名 专业外键12/2
13、1/202216兰州理工大学计算机与通信学院数据库原理与应用数据库原理与应用Principle and Application of DataBase 参照完整性规则 关系中每个元组在外键上的取值,或者为空值,或者等于与该关系相匹配的关系的主码值。用户自定义的完整性实体完整性和参照完整性是关系模型必须满足的完整性约束条件。除此之外,还需要有能反映某一具体应用所涉及的数据必须满足的语义要求的约束条件。这种约束条件,称为用户自定义的完整性。例如:人的身高不能超过3米,学生成绩应该大于等于零,职工的工龄应该小于年龄。12/21/202217兰州理工大学计算机与通信学院数据库原理与应用数据库原理与应用
14、Principle and Application of DataBase 第二章 关系模型u 2.1 关系模型的基本概念 u 2.2 关系代数 u 2.3 关系演算 u 2.4关系系统的十二条准则 u 2.5 关系系统的查询优化 u 2.6 关系数据库管理系统简介 u 2.7 小结12/21/202218兰州理工大学计算机与通信学院数据库原理与应用数据库原理与应用Principle and Application of DataBase 关系数据语言(也称数据库操作语言)是数据库管理系统提供的用户接口,是用户用来操作数据库的工具,通常包括查询语句和非查询语句。关系数据语言大体分为三类:关系数
15、据语言关系代数ISBL关系演算语言元组关系演算语言ALPHA域关系演算语言QBE具有关系代数和关系演算双重特点的语言SQL12/21/202219兰州理工大学计算机与通信学院数据库原理与应用数据库原理与应用Principle and Application of DataBase 说明:(1)关系代数语言:由一个或多个关系表行列的数学操作组成。在一系列操作中,各操作都生成一个结果关系表。(2)关系演算语言:将数据逻辑的谓词演算应用到关系运算中。关系演算语言又可分为元组关系演算语言和域关系演算语言。元组关系演算语言:谓词变元的基本对象是元组变量。域关系演算语言:谓词变元的基本对象是元组变量的分量
16、即域变量。(3)结构化查询语言(SQL):SQL不仅具有丰富的查询功能,而且具有数据定义和数据控制功能,是集数据定义语言(DDL)、数据操纵语言(DML)和数据控制语言(DCL)于一体的关系数据语言。12/21/202220兰州理工大学计算机与通信学院数据库原理与应用数据库原理与应用Principle and Application of DataBase 关系代数的基本操作 关系代数是与关系模型相关的两种形式化查询语言之一。它包括一个运算集合,这些运算以一个或两个关系为输入,产生一个新的关系作为结果。关系代数的基本运算有:选择、投影、并、差、笛卡儿积。在基本运算以外,还有一些其他运算,包括交
17、、连接和除。这些运算可以由关系代数的基本运算定义。12/21/202221兰州理工大学计算机与通信学院数据库原理与应用数据库原理与应用Principle and Application of DataBase 关系运算的一些记号:1设关系模式为。它的一个关系设为,表示 是 的一个元组。则表示元组中相应属性的一个分量。2若,其中是中的一部分,则称为属性列或属性组。表示元组在属性列上诸分量的集合。则表示 中去掉 后剩余的属性组。3为n目关系,为m目关系。称为元组12/21/202222兰州理工大学计算机与通信学院数据库原理与应用数据库原理与应用Principle and Application o
18、f DataBase 的连接。它是一个n+m列的元组,前n个分量为中的一个n元组,后m个分量为中的一个m元组。4给定一个关系,和为属性列。当时,在中的象集定义为:它表示中属性组上值为x的诸元组在上分量的集合。12/21/202223兰州理工大学计算机与通信学院数据库原理与应用数据库原理与应用Principle and Application of DataBase ABCa1b155a2b245a4b235ABCa1b255a2b245a3b135a4b235ADa1101a2101a2102a3102假设、和是三个关系 12/21/202224兰州理工大学计算机与通信学院数据库原理与应用数据
19、库原理与应用Principle and Application of DataBase 关系代数的基本操作.选择(Selection)选择运算是从输入关系中选择满足给定条件的元组,记作:其中表示选择条件,它是一个逻辑表达式。通常,允许在逻辑表达式中进行比较,使用=,。另外,还可以使用逻辑连接词与(),或()和非()把多个表达式连接合并成为一个较大的表达式。12/21/202225兰州理工大学计算机与通信学院经过运算后的结果为:2、投影(Projection)关系上的投影是从中选择出若干属性列组成新的关系。记作:数据库原理与应用数据库原理与应用Principle and Application
20、of DataBase 例如:从关系中选择属性B的值等于b2的所有元组,可以表示为:结果为:ABCa2b245a4b235ABa1b1a2b2a4b23、并(Union)并运算是传统的集合运算。它的运算结果包含了参加运算的两个关系中的所有元组。12/21/202226兰州理工大学计算机与通信学院的结果为:数据库原理与应用数据库原理与应用Principle and Application of DataBase 关系和关系的并记作:两个关系要能够进行并运算,必须是相容关系,即必须满足以下两个条件:(1)两个关系的属性数必须相同(2)从左向右,对应的属性要有相同的取值范围。ABCa1b155a2b
21、245a4b235a1b255a3b13512/21/202227兰州理工大学计算机与通信学院数据库原理与应用数据库原理与应用Principle and Application of DataBase 4、差(Difference)差运算也是传统的集合运算。它的结果包括出现在一个关系中而不出现在另一个关系中的元组。关系和关系的差记作:的结果为:ABCa1b1555、笛卡儿积(Cartesian Product)笛卡儿积运算可以将任意两个关系的信息组合在一起。两个分别为n目和m目的关系和的笛卡尔积是一个(n+m)列的元组的集合。12/21/202228兰州理工大学计算机与通信学院数据库原理与应用
22、数据库原理与应用Principle and Application of DataBase 元组的前n列是关系的一个元组,后m列是关系的一个元组。假如关系中有个n元组,关系中有m个元组。那么关系和关系的笛卡儿积中将有(n m)个元组。关系和关系的笛卡儿积记作:的结果为:12/21/202229兰州理工大学计算机与通信学院数据库原理与应用数据库原理与应用Principle and Application of DataBase R1.AR1.BR1.CR2.AR2.BR2.Ca1b155a1b255a1b155a2b245a1b155a3b135a1b155a4b235a2b245a1b255a
23、2b245a2b245a2b245a3b135a2b245a4b235a4b235a1b255a4b235a2b245a4b235a3b135a4b235a4b23512/21/202230兰州理工大学计算机与通信学院的结果为:数据库原理与应用数据库原理与应用Principle and Application of DataBase 关系代数的其他操作.交(Intersection)交运算也是传统的集合运算。它的运算结果包含了同时在两个关系中出现的所有元组。关系和关系的交记作:ABCa2b245a4b23512/21/202231兰州理工大学计算机与通信学院数据库原理与应用数据库原理与应用Pr
24、inciple and Application of DataBase 2.连接(Join)连接运算在关系代数中是最有用的运算之一,最常用的方式是合并两个或者多个关系的信息。连接运算是从两个关系的笛卡儿积中选取满足一定条件的元组。记作:其中,A和B是关系和上度数相等并且可比的属性组。是比较运算符。连接运算从和的笛卡儿积中选取关系在A属性组上的值与关系在B属性组上的值满足比较关系的元组。12/21/202232兰州理工大学计算机与通信学院的结果为:数据库原理与应用数据库原理与应用Principle and Application of DataBase R1.A R1.B R1.C R2.A R
25、2.B R2.Ca2b245a1b255a4b235a1b255a4b235a2b245连接运算有两种最重要且应用最广泛的连接:等值连接和自然连接。12/21/202233兰州理工大学计算机与通信学院的结果为:数据库原理与应用数据库原理与应用Principle and Application of DataBase 等值连接是连接运算的一种特殊情况,一般指连接条件是相等表达式,即为“=”的连接运算。等值连接要求连接的两个关系中对应属性相等。记作:R1.AR1.BR1.CR2.AR2.BR2.Ca1b155a1b255a2b245a2b245a4b235a3b135a4b235a4b23512/
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 关系 模型
限制150内