第3章关系数据库PPT讲稿.ppt
《第3章关系数据库PPT讲稿.ppt》由会员分享,可在线阅读,更多相关《第3章关系数据库PPT讲稿.ppt(23页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第3章关系数据库第1页,共23页,编辑于2022年,星期一3.1 关系模型的基本概念关系模型的基本概念3.2 3.2 关系代数关系代数关系代数关系代数3.3 3.3 规范化规范化规范化规范化3.4 3.4 关系数据库系统的查询优化关系数据库系统的查询优化关系数据库系统的查询优化关系数据库系统的查询优化3.5 3.5 常用关系数据库管理系统介绍常用关系数据库管理系统介绍常用关系数据库管理系统介绍常用关系数据库管理系统介绍第3章 关系数据库第2页,共23页,编辑于2022年,星期一关系数据库是支持关系模型的数据库系统,应用数学的方法关系数据库是支持关系模型的数据库系统,应用数学的方法关系数据库是支
2、持关系模型的数据库系统,应用数学的方法关系数据库是支持关系模型的数据库系统,应用数学的方法来处理数据库中的数据。来处理数据库中的数据。来处理数据库中的数据。来处理数据库中的数据。关系模型由关系数据结构、关系操作集合和关系完整性约束关系模型由关系数据结构、关系操作集合和关系完整性约束关系模型由关系数据结构、关系操作集合和关系完整性约束关系模型由关系数据结构、关系操作集合和关系完整性约束三部分组成。三部分组成。三部分组成。三部分组成。3.1 3.1 关系模型的基本概念关系模型的基本概念关系模型的基本概念关系模型的基本概念第3页,共23页,编辑于2022年,星期一3.1.1 3.1.1 关系的数学定
3、义关系的数学定义关系的数学定义关系的数学定义【定义【定义【定义【定义1 1】域(】域(】域(】域(DomainDomain)是一组具有相同数据类型的值的集合。)是一组具有相同数据类型的值的集合。)是一组具有相同数据类型的值的集合。)是一组具有相同数据类型的值的集合。【定义【定义【定义【定义2 2】设】设】设】设D1D1,D2D2,DnDn为任意域,定义为任意域,定义为任意域,定义为任意域,定义D1D1,D2D2,DnDn的笛卡尔积(的笛卡尔积(的笛卡尔积(的笛卡尔积(Cartesian ProductCartesian Product)为:)为:)为:)为:【定义【定义【定义【定义3 3】D1
4、D2DnD1D2Dn的任意一个子集叫做的任意一个子集叫做的任意一个子集叫做的任意一个子集叫做D1D2DnD1D2Dn上的一个关系(上的一个关系(上的一个关系(上的一个关系(RelationRelation),用),用),用),用R(D1D2Dn)R(D1D2Dn)表示。这表示。这表示。这表示。这里里里里R R表示关系名,表示关系名,表示关系名,表示关系名,n n表示关系的目或度(表示关系的目或度(表示关系的目或度(表示关系的目或度(DegreeDegree)。)。)。)。3.1 3.1 关系模型的基本概念关系模型的基本概念关系模型的基本概念关系模型的基本概念第4页,共23页,编辑于2022年,
5、星期一关系具有以下性质:关系具有以下性质:关系具有以下性质:关系具有以下性质:1)1)列是同质的,即每一列中的分量是同一类型的数据,来自同列是同质的,即每一列中的分量是同一类型的数据,来自同列是同质的,即每一列中的分量是同一类型的数据,来自同列是同质的,即每一列中的分量是同一类型的数据,来自同一个域。一个域。一个域。一个域。2)2)不同的列可以出自同一个域,每一列称为一个属性。在同一关系中,不同的列可以出自同一个域,每一列称为一个属性。在同一关系中,不同的列可以出自同一个域,每一列称为一个属性。在同一关系中,不同的列可以出自同一个域,每一列称为一个属性。在同一关系中,属性名不能相同。属性名不能
6、相同。属性名不能相同。属性名不能相同。3)3)列的顺序无关紧要,即列的顺序可以任意转换。列的顺序无关紧要,即列的顺序可以任意转换。列的顺序无关紧要,即列的顺序可以任意转换。列的顺序无关紧要,即列的顺序可以任意转换。4)4)任意两个元组(行或记录)不能完全相同任意两个元组(行或记录)不能完全相同任意两个元组(行或记录)不能完全相同任意两个元组(行或记录)不能完全相同5)5)行的顺序也无关紧要,即行的顺序也可以任意转换。行的顺序也无关紧要,即行的顺序也可以任意转换。行的顺序也无关紧要,即行的顺序也可以任意转换。行的顺序也无关紧要,即行的顺序也可以任意转换。6)6)行列的交集称为分量,每个分量的取值
7、必须是原子值,即分量不能再行列的交集称为分量,每个分量的取值必须是原子值,即分量不能再行列的交集称为分量,每个分量的取值必须是原子值,即分量不能再行列的交集称为分量,每个分量的取值必须是原子值,即分量不能再分。分。分。分。3.1 3.1 关系模型的基本概念关系模型的基本概念关系模型的基本概念关系模型的基本概念第5页,共23页,编辑于2022年,星期一3.1.2 3.1.2 关系模型关系模型关系模型关系模型基于关系模型的关系数据库需要区分值和型,关系是值,关系基于关系模型的关系数据库需要区分值和型,关系是值,关系基于关系模型的关系数据库需要区分值和型,关系是值,关系基于关系模型的关系数据库需要区
8、分值和型,关系是值,关系模式是型。关系模型由三部分组成:关系数据结构、关系操模式是型。关系模型由三部分组成:关系数据结构、关系操模式是型。关系模型由三部分组成:关系数据结构、关系操模式是型。关系模型由三部分组成:关系数据结构、关系操作和关系的完整性。作和关系的完整性。作和关系的完整性。作和关系的完整性。1.1.关系关系关系关系在关系模型中主要涉及的概念有码、关系模式、关系数据库。在关系模型中主要涉及的概念有码、关系模式、关系数据库。在关系模型中主要涉及的概念有码、关系模式、关系数据库。在关系模型中主要涉及的概念有码、关系模式、关系数据库。(1)(1)码码码码码是指关系中某一属性组。码是指关系中
9、某一属性组。码是指关系中某一属性组。码是指关系中某一属性组。(2)(2)关系模式关系模式关系模式关系模式关系的描述称为关系模式。关系的描述称为关系模式。关系的描述称为关系模式。关系的描述称为关系模式。【定义【定义【定义【定义4 4】关系的描述称为关系模式(】关系的描述称为关系模式(】关系的描述称为关系模式(】关系的描述称为关系模式(Relation SchemaRelation Schema)。)。)。)。它可以形式化地表示为:它可以形式化地表示为:它可以形式化地表示为:它可以形式化地表示为:3.1 关系模型的基本概念关系模型的基本概念第6页,共23页,编辑于2022年,星期一(3)(3)关系
10、数据库关系数据库关系数据库关系数据库在一个给定的领域中,实体以及实体之间的联系的集合构成在一个给定的领域中,实体以及实体之间的联系的集合构成在一个给定的领域中,实体以及实体之间的联系的集合构成在一个给定的领域中,实体以及实体之间的联系的集合构成了一个关系数据库。对于关系数据库也要区分型和值的概念。了一个关系数据库。对于关系数据库也要区分型和值的概念。了一个关系数据库。对于关系数据库也要区分型和值的概念。了一个关系数据库。对于关系数据库也要区分型和值的概念。关系数据库的型是指对关系数据库的描述,它包括若干域的关系数据库的型是指对关系数据库的描述,它包括若干域的关系数据库的型是指对关系数据库的描述
11、,它包括若干域的关系数据库的型是指对关系数据库的描述,它包括若干域的定义,以及在这些域上定义的若干关系模式。关系数据库的定义,以及在这些域上定义的若干关系模式。关系数据库的定义,以及在这些域上定义的若干关系模式。关系数据库的定义,以及在这些域上定义的若干关系模式。关系数据库的值是这些关系模式在某一时刻对应的关系的集合。值是这些关系模式在某一时刻对应的关系的集合。值是这些关系模式在某一时刻对应的关系的集合。值是这些关系模式在某一时刻对应的关系的集合。3.1 关系模型的基本概念关系模型的基本概念第7页,共23页,编辑于2022年,星期一2.2.关系操作关系操作关系操作关系操作关系模型给出了关系操作
12、的能力和特点,但不对关系模型给出了关系操作的能力和特点,但不对关系模型给出了关系操作的能力和特点,但不对关系模型给出了关系操作的能力和特点,但不对DBMSDBMS的语言给出具体的语言给出具体的语言给出具体的语言给出具体的语法要求。关系操作采用集合操作方式,即操作的对象和结构都是的语法要求。关系操作采用集合操作方式,即操作的对象和结构都是的语法要求。关系操作采用集合操作方式,即操作的对象和结构都是的语法要求。关系操作采用集合操作方式,即操作的对象和结构都是集合。这种操作方式也称为一次一集合(集合。这种操作方式也称为一次一集合(集合。这种操作方式也称为一次一集合(集合。这种操作方式也称为一次一集合
13、(set-at-timeset-at-time)的方式。)的方式。)的方式。)的方式。关系模型中常用的关系操作包括:选择(关系模型中常用的关系操作包括:选择(关系模型中常用的关系操作包括:选择(关系模型中常用的关系操作包括:选择(SelectSelect)、投影)、投影)、投影)、投影(ProjectProject)、连接()、连接()、连接()、连接(JoinJoin)、除()、除()、除()、除(DivideDivide)、并()、并()、并()、并(UnionUnion)、交)、交)、交)、交(IntersectionIntersection)、差()、差()、差()、差(Differe
14、nceDifference)等查询()等查询()等查询()等查询(QueryQuery)操作和)操作和)操作和)操作和增加(增加(增加(增加(InsertInsert)、删除()、删除()、删除()、删除(DeleteDelete)、修改()、修改()、修改()、修改(UpdateUpdate)操作。其中)操作。其中)操作。其中)操作。其中查询的表达能力是其最主要的部分。查询的表达能力是其最主要的部分。查询的表达能力是其最主要的部分。查询的表达能力是其最主要的部分。3.1 关系模型的基本概念关系模型的基本概念第8页,共23页,编辑于2022年,星期一3.3.关系的完整性关系的完整性关系模型提供
15、了丰富的完整性控制机制,允许定义三类完整性约束:实体完整性、关系模型提供了丰富的完整性控制机制,允许定义三类完整性约束:实体完整性、关系模型提供了丰富的完整性控制机制,允许定义三类完整性约束:实体完整性、关系模型提供了丰富的完整性控制机制,允许定义三类完整性约束:实体完整性、参照完整性和用户定义的完整性。参照完整性和用户定义的完整性。参照完整性和用户定义的完整性。参照完整性和用户定义的完整性。(1)(1)实体完整性实体完整性【规则【规则【规则【规则1 1】若属性(或属性组)】若属性(或属性组)】若属性(或属性组)】若属性(或属性组)A A是基本关系是基本关系是基本关系是基本关系R R的主属性,
16、则属性的主属性,则属性的主属性,则属性的主属性,则属性A A不能取空值。不能取空值。不能取空值。不能取空值。(2)(2)参照完整性参照完整性【规则【规则【规则【规则2 2】若属性(或属性组)】若属性(或属性组)】若属性(或属性组)】若属性(或属性组)A A不是基本关系不是基本关系不是基本关系不是基本关系R R的主码,它与基本关系的主码,它与基本关系的主码,它与基本关系的主码,它与基本关系S S的的的的主码主码主码主码B B相对应(基本关系相对应(基本关系相对应(基本关系相对应(基本关系R R和关系和关系和关系和关系S S不一定是不同的关系),称不一定是不同的关系),称不一定是不同的关系),称不
17、一定是不同的关系),称A A是关系是关系是关系是关系S S的外(部)码(的外(部)码(的外(部)码(的外(部)码(Foreign KeyForeign Key)。则对于)。则对于)。则对于)。则对于R R中的每个元组在中的每个元组在中的每个元组在中的每个元组在A A上的值必须上的值必须上的值必须上的值必须为:或者取空值,或者等于为:或者取空值,或者等于为:或者取空值,或者等于为:或者取空值,或者等于S S的主码的主码的主码的主码B B的某个元组的主码值。的某个元组的主码值。的某个元组的主码值。的某个元组的主码值。参照完整性是指一个关系中外码的码值必须是相应数据库中其他关系的主码值之一,或为参照
18、完整性是指一个关系中外码的码值必须是相应数据库中其他关系的主码值之一,或为参照完整性是指一个关系中外码的码值必须是相应数据库中其他关系的主码值之一,或为参照完整性是指一个关系中外码的码值必须是相应数据库中其他关系的主码值之一,或为空,即用来定义外码与主码之间引用规则的。空,即用来定义外码与主码之间引用规则的。空,即用来定义外码与主码之间引用规则的。空,即用来定义外码与主码之间引用规则的。(3)(3)用户定义的完整性用户定义的完整性不同的关系数据库系统根据其应用环境的不同,往往还需要一些特殊的约束条件,而用户不同的关系数据库系统根据其应用环境的不同,往往还需要一些特殊的约束条件,而用户不同的关系
19、数据库系统根据其应用环境的不同,往往还需要一些特殊的约束条件,而用户不同的关系数据库系统根据其应用环境的不同,往往还需要一些特殊的约束条件,而用户定义的完整性就是针对某一具体关系数据库的约束条件。定义的完整性就是针对某一具体关系数据库的约束条件。定义的完整性就是针对某一具体关系数据库的约束条件。定义的完整性就是针对某一具体关系数据库的约束条件。3.1 3.1 关系模型的基本概念关系模型的基本概念关系模型的基本概念关系模型的基本概念第9页,共23页,编辑于2022年,星期一关系代数是关系操作的理论基础,是关系数据操作的传统方式。关系代关系代数是关系操作的理论基础,是关系数据操作的传统方式。关系代
20、关系代数是关系操作的理论基础,是关系数据操作的传统方式。关系代关系代数是关系操作的理论基础,是关系数据操作的传统方式。关系代数是一种抽象的查询语言,是关系数据操作语言的一种传统表达方式,数是一种抽象的查询语言,是关系数据操作语言的一种传统表达方式,数是一种抽象的查询语言,是关系数据操作语言的一种传统表达方式,数是一种抽象的查询语言,是关系数据操作语言的一种传统表达方式,它是用对关系的运算来表达查询的。它是用对关系的运算来表达查询的。它是用对关系的运算来表达查询的。它是用对关系的运算来表达查询的。1.1.关系代数的运算关系代数的运算关系代数的运算关系代数的运算(1)(1)传统的集合运算传统的集合
21、运算传统的集合运算传统的集合运算(2)(2)专门的关系运算专门的关系运算专门的关系运算专门的关系运算2.2.关系代数用到的运算符关系代数用到的运算符关系代数用到的运算符关系代数用到的运算符关系代数的运算对象是关系(或表),运算结果也是关系(或表)。关系代数的运算对象是关系(或表),运算结果也是关系(或表)。关系代数的运算对象是关系(或表),运算结果也是关系(或表)。关系代数的运算对象是关系(或表),运算结果也是关系(或表)。关系代数用到的运算符有:关系代数用到的运算符有:关系代数用到的运算符有:关系代数用到的运算符有:1)1)集合运算符:集合运算符:集合运算符:集合运算符:(并),(差),(并
22、),(差),(并),(差),(并),(差),(交),(交),(交),(交),(广义笛卡尔积)。(广义笛卡尔积)。(广义笛卡尔积)。(广义笛卡尔积)。2)2)专门的关系运算符:专门的关系运算符:专门的关系运算符:专门的关系运算符:(选择),(选择),(选择),(选择),(投影),(连接),(投影),(连接),(投影),(连接),(投影),(连接),(除)。(除)。(除)。(除)。3)3)算术比较符:算术比较符:算术比较符:算术比较符:=,=,4)4)逻辑运算符:逻辑运算符:逻辑运算符:逻辑运算符:(非非非非),(与),(与),(与),(与),(或)(或)(或)(或)3.2 3.2 关系代数关系代
23、数关系代数关系代数第10页,共23页,编辑于2022年,星期一3.2.1 3.2.1 传统的集合运算传统的集合运算传统的集合运算传统的集合运算传统的集合运算包括并、差、交、广义笛卡尔积四种运算。它们都是二传统的集合运算包括并、差、交、广义笛卡尔积四种运算。它们都是二传统的集合运算包括并、差、交、广义笛卡尔积四种运算。它们都是二传统的集合运算包括并、差、交、广义笛卡尔积四种运算。它们都是二目运算,即集合运算符两边都必须有运算对象。目运算,即集合运算符两边都必须有运算对象。目运算,即集合运算符两边都必须有运算对象。目运算,即集合运算符两边都必须有运算对象。1.1.并(并(并(并(UnionUnio
24、n)其结果仍为其结果仍为其结果仍为其结果仍为n n目关系,由属于目关系,由属于目关系,由属于目关系,由属于R R或属于或属于或属于或属于S S的元组组成。的元组组成。的元组组成。的元组组成。2.2.差(差(差(差(DifferenceDifference)其结果关系仍为其结果关系仍为其结果关系仍为其结果关系仍为n n目关系,由属于目关系,由属于目关系,由属于目关系,由属于R R而不属于而不属于而不属于而不属于S S的所有元组组成。的所有元组组成。的所有元组组成。的所有元组组成。3.3.交(交(交(交(IntersectionIntersection)其结果关系仍为其结果关系仍为其结果关系仍为其
25、结果关系仍为n n目关系,由既属于目关系,由既属于目关系,由既属于目关系,由既属于R R又属于又属于又属于又属于S S的元组组成。的元组组成。的元组组成。的元组组成。3.2 3.2 关系代数关系代数关系代数关系代数第11页,共23页,编辑于2022年,星期一4.4.广义笛卡尔积(广义笛卡尔积(Extended Cartesian ProductExtended Cartesian Product)两个分别为两个分别为两个分别为两个分别为n n目和目和目和目和mm目的关系目的关系目的关系目的关系R R和和和和S S的广义笛卡尔积是一个的广义笛卡尔积是一个的广义笛卡尔积是一个的广义笛卡尔积是一个(
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 关系 数据库 PPT 讲稿
限制150内