第2章关系数据库精选PPT.ppt
《第2章关系数据库精选PPT.ppt》由会员分享,可在线阅读,更多相关《第2章关系数据库精选PPT.ppt(42页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第2章章 关系数据库关系数据库第1页,此课件共42页哦教学提示:教学提示:关系模型是关系数据库的基础,关系代数则是应用数学方法来处理数据库中的数据的方法。关系的完整性约束和关系的规范化设计为数据库的合理运用提供保证。教学目标:教学目标:理解关系模型,掌握完整性约束规则,掌握基础关系运算,了解规范化理论。第3页,此课件共42页哦目录目录第第2章章 关系数据库关系数据库1.1 关系数据系统概述关系数据系统概述11.2 关系模型的数据结构关系模型的数据结构 22.3 关系的完整性及约束关系的完整性及约束 32.1 关系关系12.2 关系运算关系运算 22.4 2.4 2.4 2.4 关系设计的规范
2、化关系设计的规范化关系设计的规范化关系设计的规范化 4第4页,此课件共42页哦2.1 关系关系关系模型中无论是实体还是实体间的联系均由单一的关系模型中无论是实体还是实体间的联系均由单一的结构类型即关系来表示。在实际的关系数据库中的关系也结构类型即关系来表示。在实际的关系数据库中的关系也称表。一个关系数据库就是由若干个表组成称表。一个关系数据库就是由若干个表组成.1.域(域(Domain)域是一组具有相同数据类型的值的集合。域是一组具有相同数据类型的值的集合。例如,整数、实数、介于某个取值范围的整数、指例如,整数、实数、介于某个取值范围的整数、指定长度的字符串集合、定长度的字符串集合、男男,女女
3、、所有学生的姓名、所有学生的姓名、介于某个取值范围的日期等都可以是域。介于某个取值范围的日期等都可以是域。第5页,此课件共42页哦2.1 关系关系2.关系关系 关系是笛卡尔积的有限子集。无限关系在数据库系统中是无意义关系是笛卡尔积的有限子集。无限关系在数据库系统中是无意义的。关系也是一个二维表,表的每行对应一个元组,表的每列对应一个域。的。关系也是一个二维表,表的每行对应一个元组,表的每列对应一个域。例如学生关系见表例如学生关系见表2-1,“B0001,王华,王华,19,计算机系,计算机系”是一个元组。是一个元组。“所在系所在系”列中的取值来自全校所有的系名组成的域。列中的取值来自全校所有的系
4、名组成的域。表表2-1 学生关系学生关系 第6页,此课件共42页哦2.1 关系关系3.关系的性质关系的性质关系具有以下性质:关系具有以下性质:1)列是同质的,每一列中的分量是同一类型的数据,来列是同质的,每一列中的分量是同一类型的数据,来自同一个域。自同一个域。2)不同的列可出自同一个域,其中的每一列称为一个不同的列可出自同一个域,其中的每一列称为一个属性,不同的属性要给予不同的属性名。属性,不同的属性要给予不同的属性名。3)列的顺序无所谓,列的次序可以任意交换。列的顺序无所谓,列的次序可以任意交换。4)任意两个元组不能完全相同。即关系中不能有完全任意两个元组不能完全相同。即关系中不能有完全相
5、同的两条记录。相同的两条记录。5)行的顺序无所谓,行的次序可以任意交换。行的顺序无所谓,行的次序可以任意交换。6)分量必须取原子值,每一个分量都必须是不可分的数分量必须取原子值,每一个分量都必须是不可分的数据项。即每个属性不能再分割。据项。即每个属性不能再分割。第7页,此课件共42页哦关系数模型的基本概念关系数模型的基本概念关系模型关系模型 之 关系的特点简单地总结关系的特点简单地总结就是就是:属性不可再分元组不重复(行不重复)属性名不能相同(列不重复)行无序列无序第8页,此课件共42页哦2.2 关系运算关系运算关系操作集合也是关系模型的三要素之一。关系的运算是关系操作的运算基础。关系运算主要
6、有选择、投影、连接等运算。关系运算主要有选择、投影、连接等运算。第9页,此课件共42页哦2.2.1 选择选择选择(Selection)运算:选择运算又称为限制运算,是关系上的一元运算,简记为SL,它根据条件对关系进行水平分解,选择满足条件的元组组成一个新的关系,如用F表示选择条件,则记作:F(R)=t|tRF(t)=“TURE”第10页,此课件共42页哦2.2.1 选择选择选择运算记为选择运算记为F(R),其中,其中是选择运算符,是选择运算符,R是一个关系,是一个关系,F为条件表达式。为条件表达式。若学生信息见若学生信息见表表2-1,若要找出所有年龄低于,若要找出所有年龄低于20的行组成一个的
7、行组成一个新表新表,则需要做选择运算。,则需要做选择运算。F(学生信息学生信息),其中,其中F为年龄为年龄20。该运算的结果见表。该运算的结果见表2-2。表表2-2 选择运算的结果选择运算的结果 第11页,此课件共42页哦2.2.2 投影投影投影(Projection)运算:投影运算是对关系的垂直分割,消去某些列,并重新排列的顺序,再删除重复的元组如:关系R(A,B,C)在A,C列上的投影。记作:A,C(R)第12页,此课件共42页哦投影案例投影案例若要对表若要对表2-1学生信息中的学生信息中的“学号学号”和和“姓名姓名”组成新表,组成新表,则需要做投影运算。则需要做投影运算。x(S),其中,
8、其中x为学号,姓名。该运算的为学号,姓名。该运算的结果见表结果见表2-3。表表2-3 投影运算的结果投影运算的结果第13页,此课件共42页哦2.2.3 连接连接 连接是将两个关系的属性名拼接成一个更宽连接是将两个关系的属性名拼接成一个更宽的关系,生成的新关系中包含满足连接条件的元的关系,生成的新关系中包含满足连接条件的元组。运算过程是通过连接条件来控制的,连接是组。运算过程是通过连接条件来控制的,连接是对两个表的操作。对两个表的操作。第14页,此课件共42页哦2.2.3 连接连接 1.交叉连接交叉连接交叉连接又称笛卡尔连接,设表交叉连接又称笛卡尔连接,设表R和和S的属性的属性个数分别为个数分别
9、为r和和s,元组个数分别为,元组个数分别为m和和n,则,则R和和S的交叉连接是一个具有的交叉连接是一个具有rs个属性,个属性,mn个元个元组的表,且每个元组的前组的表,且每个元组的前r个属性来自于个属性来自于R的一个的一个元组,后元组,后s个属性来自于个属性来自于S的一个元组,记为的一个元组,记为RS。第15页,此课件共42页哦2.2.3 连接连接 属性名相同时,表示属性名相同时,表示方式是方式是第16页,此课件共42页哦交叉连接案例交叉连接案例设学生和选课关系见表设学生和选课关系见表2-4。则学生。则学生选课的结果见表选课的结果见表2-5。表表2-4 学生和选课关系学生和选课关系 表表2-5
10、 交叉连接交叉连接 第17页,此课件共42页哦2.2.3 连接连接联接(Join)运算:联接运算简记为JN,联接是从二个关系的笛卡儿积中选取属性间满足一定条件的元组。记作:R S=RA RB(RS)A和B分别为关系R和S上度数相等的可以比较的属性组,是比较运算符。第18页,此课件共42页哦连接案例连接案例条件连接是把两个表中的行按照给定的条件进行拼接而形成的新表,结条件连接是把两个表中的行按照给定的条件进行拼接而形成的新表,结果列为连接的两个表的所有列,记为果列为连接的两个表的所有列,记为R F S。其中。其中R和和S是进行连接的表,是进行连接的表,F是条件。是条件。设学生和选课关系见表设学生
11、和选课关系见表2-4。则学生。则学生F选课的结果见表选课的结果见表2-6,其中条件,其中条件为为“成绩成绩”“年龄年龄”。表表2-6 条件连接条件连接第19页,此课件共42页哦2.2.3 连接连接(2)自然连接自然连接自然连接是除去重复属性的等值连接,它是连接运算的一个特例,自然连接是除去重复属性的等值连接,它是连接运算的一个特例,是最常用的连接运算。是最常用的连接运算。自然连接记为自然连接记为RS,其中,其中R和和S是两个表,并且具有一个或多个是两个表,并且具有一个或多个同名属性。在连接运算中,同名属性一般都是外关键字,否则会出现同名属性。在连接运算中,同名属性一般都是外关键字,否则会出现重
12、复数据。重复数据。也就是:从两个关系的笛卡儿积中选择出公共属性值相等的元组所组成的新的关系(即即选择选择相同属性的值相同的元组相同属性的值相同的元组求笛卡儿积,相同求笛卡儿积,相同的部分保留一份的部分保留一份)第20页,此课件共42页哦自然连接案例自然连接案例自然连接是除去重复属性的等值连接,它是连接运算的一个特例,自然连接是除去重复属性的等值连接,它是连接运算的一个特例,是最常用的连接运算。是最常用的连接运算。自然连接记为自然连接记为RS,其中,其中R和和S是两个表,并且具有一个或多个是两个表,并且具有一个或多个同名属性。在连接运算中,同名属性一般都是外关键字,否则会出现同名属性。在连接运算
13、中,同名属性一般都是外关键字,否则会出现重复数据。重复数据。设学生和选课关系见表设学生和选课关系见表2-4。则学生。则学生选课的结果见表选课的结果见表2-7。表表2-7 自然连接自然连接 第21页,此课件共42页哦2.2.3 连接连接3.外连接外连接 在关系在关系R和和S上做自然连接时,选择两个关系上做自然连接时,选择两个关系在公共属性上值相等的元组构成新关系的元组。在公共属性上值相等的元组构成新关系的元组。此时此时R和和S中公共属性值不相等的元组被舍弃。中公共属性值不相等的元组被舍弃。如果如果R和和S在做自然连接时,把原该舍弃的元组在做自然连接时,把原该舍弃的元组也保留在新关系中,同时在这些
14、元组新增加的属也保留在新关系中,同时在这些元组新增加的属性上填上空值(性上填上空值(NULL),这种操作称为),这种操作称为“外连外连接接”操作。操作。第22页,此课件共42页哦2.2.3 连接连接(1)左外连接左外连接左外连接就是在查询结果集中显示左边表中所有的记录,左外连接就是在查询结果集中显示左边表中所有的记录,以及右边表中符合条件的记录。以及右边表中符合条件的记录。(2)右外连接右外连接右外连接就是在查询结果集中显示右边表中所有的记录,右外连接就是在查询结果集中显示右边表中所有的记录,以及左边表中符合条件的记录。以及左边表中符合条件的记录。(3)全外连接全外连接全外连接就是在查询结果集
15、中显示左右两张表中所有的全外连接就是在查询结果集中显示左右两张表中所有的记录,包括符合条件和不符合条件的记录。记录,包括符合条件和不符合条件的记录。若有两个关系学生和选课,见表若有两个关系学生和选课,见表2-4,则左外连接、右,则左外连接、右外连接和全外连接结果见表外连接和全外连接结果见表2-8。第23页,此课件共42页哦外连接案例外连接案例第24页,此课件共42页哦2.3 关系的完整性及约束关系的完整性及约束2.3.1 关系的完整性关系的完整性关系的完整性也可称为关系的约束条件。它是对关系的一些限制和规定。关系的完整性也可称为关系的约束条件。它是对关系的一些限制和规定。通过这些限制保证数据的
16、正确性和一致性。关系的完整性包括实体完整性、通过这些限制保证数据的正确性和一致性。关系的完整性包括实体完整性、参照完整性和域完整性。参照完整性和域完整性。1.实体完整性实体完整性实体完整性规则规定基本关系的所有主码对应的主属性都不能实体完整性规则规定基本关系的所有主码对应的主属性都不能取空值。取空值。例如学生关系中,学生(学号,姓名,年龄,所在系),其中学号例如学生关系中,学生(学号,姓名,年龄,所在系),其中学号为主码。为主码。学号不能取空值。学号不能取空值。第25页,此课件共42页哦2.3.1 关系的完整性关系的完整性2.参照完整性参照完整性参照完整性指被引用表中的主关键字和引用表中的外部
17、主关键字之间的参照完整性指被引用表中的主关键字和引用表中的外部主关键字之间的关系。如被引用行是否可以被删除等。如果要删除被引用的对象,那么也要关系。如被引用行是否可以被删除等。如果要删除被引用的对象,那么也要删除引用它的所有对象,或者把引用值设置为空删除引用它的所有对象,或者把引用值设置为空(如果允许的话如果允许的话)。例如,在前面的学生和选课关系中,删除某个学生元组之前,必须例如,在前面的学生和选课关系中,删除某个学生元组之前,必须先删除相应的引用该学生的选课元组。这就是参照完整性。先删除相应的引用该学生的选课元组。这就是参照完整性。3.域完整性域完整性域完整性是针对某一具体关系数据库的约束
18、条件,反映某一具体域完整性是针对某一具体关系数据库的约束条件,反映某一具体应用所涉及的数据必须满足的语义要求。应用所涉及的数据必须满足的语义要求。例如,选课关系中的例如,选课关系中的“分数分数”取值规定为取值规定为0到到100之间。之间。第26页,此课件共42页哦2.3.2 约束约束SQL Server 2008提供了提供了6种约束,用以保证数据的完整性。约束种约束,用以保证数据的完整性。约束是对实体属性的取值范围和格式所设置的限制,是实现数据完整性的重是对实体属性的取值范围和格式所设置的限制,是实现数据完整性的重要手段。要手段。1.主键约束(主键约束(Primary Key)设置主键约束的字
19、段称为主键字段,主键约束可以保证数据的实设置主键约束的字段称为主键字段,主键约束可以保证数据的实体完整性。体完整性。规范化的数据库中的每张表都必须设置主键约束,主键的字段规范化的数据库中的每张表都必须设置主键约束,主键的字段值必须是唯一的,不允许重复,也不能为空。一张表只能定义一个值必须是唯一的,不允许重复,也不能为空。一张表只能定义一个主键,主键可以是单一字段,也可以是多个字段的组合。主键,主键可以是单一字段,也可以是多个字段的组合。例如,在前面的学生关系中,设置例如,在前面的学生关系中,设置“学号学号”为主键;在选课关系中,为主键;在选课关系中,设置设置“学号学号+课程名课程名”为主键。为
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第2章 关系数据库精选PPT 关系 数据库 精选 PPT
限制150内