数据库课件ch2.ppt

上传人(卖家):三亚风情 文档编号:2823261 上传时间:2022-05-29 格式:PPT 页数:50 大小:1.13MB
下载 相关 举报
数据库课件ch2.ppt_第1页
第1页 / 共50页
数据库课件ch2.ppt_第2页
第2页 / 共50页
数据库课件ch2.ppt_第3页
第3页 / 共50页
数据库课件ch2.ppt_第4页
第4页 / 共50页
数据库课件ch2.ppt_第5页
第5页 / 共50页
点击查看更多>>
资源描述

1、第二章 关系数据库2.1 关系模型概述关系模型概述2.2 关系数据结构级形式化定义关系数据结构级形式化定义2.3 关系的完整性关系的完整性2.1 关系模型关系模型 数据模型的组成要素:数据模型的组成要素:数据模型通常由数据结构、数据操作、数据模型通常由数据结构、数据操作、和完整性约束三部分组成。和完整性约束三部分组成。(1) 数据结构数据结构 数据结构是所研究的对象类型(数据结构是所研究的对象类型(Object Type)的集合。这些对象是数据库)的集合。这些对象是数据库的组成部分。一般可分为两类:一类是与数据类型、内容、性质有关的对象,如的组成部分。一般可分为两类:一类是与数据类型、内容、性

2、质有关的对象,如网状模型中的数据项、记录,关系模型中的属性、关系等;一类是与数据之间联网状模型中的数据项、记录,关系模型中的属性、关系等;一类是与数据之间联系有关的对象,如网状模型中的系型(系有关的对象,如网状模型中的系型(Set Type)等。)等。(2) 数据操作数据操作 数据操作是指对数据库中各种对象(型)的实例(值)允许执行的操作的集数据操作是指对数据库中各种对象(型)的实例(值)允许执行的操作的集合。数据库主要有检索和更新(插入、删除、修改)两大类操作。合。数据库主要有检索和更新(插入、删除、修改)两大类操作。数据结构是对系统静态特性的描述,数据操作是对系统动态特性的描述。数据结构是

3、对系统静态特性的描述,数据操作是对系统动态特性的描述。(3) 数据的约束条件数据的约束条件 数据的约束条件是完整性规则的集合。完整性规则是给定的数据模型中数据数据的约束条件是完整性规则的集合。完整性规则是给定的数据模型中数据及其联系所具有的制约和依存规则,用以限定符合数据模型的数据状态以及状态及其联系所具有的制约和依存规则,用以限定符合数据模型的数据状态以及状态的变化,以保证数据的正确、有效、相容的变化,以保证数据的正确、有效、相容。关系数据模型的组成要素:关系数据模型的组成要素:1)关系数据结构:实体及联系统一用二维表表示(关系)。关系数据结构:实体及联系统一用二维表表示(关系)。2)关系操

4、作关系操作3)关系完整性约束关系完整性约束实体完整性参照完整性用户定义完整性选择投影连接除并交差积增加删除修改专门的关系运算传统的集合运算更新操作查询操作学号姓名年龄1aaa202bbb213ccc20关系数据结构:关系数据结构:1.概念:域,笛卡儿积,关系。概念:域,笛卡儿积,关系。侯选码:关系中的某一属性组的值能唯一地标识一个元组,侯选码:关系中的某一属性组的值能唯一地标识一个元组,则称该属性组为侯选码。则称该属性组为侯选码。主码:若一个关系有多个侯选码,则选定其中一个为主码。主码:若一个关系有多个侯选码,则选定其中一个为主码。主属性:包含在侯选码中的诸属性称为主属性。主属性:包含在侯选码

5、中的诸属性称为主属性。非主属性:不包含在任何侯选码中的属性称为非主属性。非主属性:不包含在任何侯选码中的属性称为非主属性。关系:一组域上的笛卡儿积的子集 给定一组域D1,D2,Dn,这些域中可以有相同的。 D1,D2,Dn的笛卡儿积为:D1D2Dn = (d1,d2,dn) | di Di, i=1,2,n其中,每一个元素(d1,d2,dn)叫作一个n元组(n-tuple)或简称元组学号姓名年龄1aaa202bbb213ccc20l 基本关系的性质基本关系的性质l 关系规范化:关系规范化:l 规范化关系的最基本要求是每一个分量规范化关系的最基本要求是每一个分量(列列)必须是不可再分的必须是不可

6、再分的(第一范式第一范式)。l 关系数据库:关系数据库:l 所以实体之间的联系所构成的关系的集合。所以实体之间的联系所构成的关系的集合。l关系完整性:关系完整性:1. 实体完整性:实体完整性: 关系的主码不能为空。关系的主码不能为空。2. 参照完整性:参照完整性: 对两个关系对两个关系R,S而言,如果而言,如果R的属性(或属性组)的属性(或属性组)F与关系与关系S的主码的主码KS相对应,则称相对应,则称F是是R的外码。的外码。列是同质的,即数据类型一样;列顺序无关紧要;任意两个元组(行)不能相同(完全);分量(列)必须取原子值(不可再分);不同的列(但数据类型基本相同)可出自同一域。姓名工资1

7、工资2张三500600李四400500工资姓名工资1 工资2张三600500李四500400l 用户定义的完整性:用户定义的完整性:l 某一具体的数据库的属性及其关系所应满足的条件。某一具体的数据库的属性及其关系所应满足的条件。例如:年龄例如:年龄15,体重,体重50Kg。l 小结:小结: 实体完整性和参照完整性是所有关系数据库都支持的称实体完整性和参照完整性是所有关系数据库都支持的称为关系的两个不变性。为关系的两个不变性。学号姓名年龄学历1aaa2bbb3ccc4ddd5eee学号数学英语化学12345主码(主键):学号侯选码(键):学号,姓名 主属性:学号,姓名RSl关系操作关系操作 关系

8、模型给出了关系操作的能力和特点,但不对关系模型给出了关系操作的能力和特点,但不对DBMS的语言给出具体的语法要求。的语言给出具体的语法要求。l关系语言的特点是高度非过程化。关系语言的特点是高度非过程化。l关系操作能力是用两种方式表示的:关系代数和关系演算,关系操作能力是用两种方式表示的:关系代数和关系演算,它们的功能是等价的。它们的功能是等价的。例如:SELECT 姓名,年龄 FORM 学生表 WHERE 年龄50关系操作的能力常用关系代数表示1)选择(Selection)2)投影(Projection)3)连接 (Join)4)除(Division) 5)并(Union)6)交(Inters

9、ection)7)差(Set Difference)8)关系操作方式的特点是集合操作(一次一集合)关系代数运算符关系代数集合运算l集合集合(Set)l无重复、顺序无关无重复、顺序无关 1,2,3l多重集合多重集合(Bag)l可重复、顺序无关可重复、顺序无关 1,2,2,3,4l列表列表(List)l可重复、顺序相关可重复、顺序相关 (1,2,3,4)l集合运算集合运算l并、交、差、广义笛卡儿积并、交、差、广义笛卡儿积l二目运算二目运算集合运算并Union ()lR和和S的并,的并,RS,是在,是在R或或S或两者中或两者中的元素的集合的元素的集合l一个元素在并集中只出现一次一个元素在并集中只出现

10、一次lR和和S必须同类型(属性集相同、次序必须同类型(属性集相同、次序相同,但属性名可以不同)相同,但属性名可以不同)RS集合运算并Union ()集合运算交Intersect ()lR和和S的交,的交,RS,是在,是在R和和S中都存在中都存在的元素的集合的元素的集合l一个元素在交集中只出现一次一个元素在交集中只出现一次lR和和S必须同类型(属性集相同、次序必须同类型(属性集相同、次序相同,但属性名可以不同)相同,但属性名可以不同)RS集合运算交Intersect ()集合运算差Minus (-)lR和和S的差,的差,R-S,是在,是在R中而不在中而不在S中中的元素的集合的元素的集合lR和和S

11、必须同类型(属性集相同、次序必须同类型(属性集相同、次序相同,但属性名可以不同)相同,但属性名可以不同)R - S集合运算差Minus (-)集合运算笛卡儿积()l关系关系R、S的笛卡儿积是两个关系的元的笛卡儿积是两个关系的元组对的集合所组成的新关系组对的集合所组成的新关系lRS:l属性属性是是R和和S的组合(有重复)的组合(有重复)l元组元组是是R和和S所有元组的可能组合所有元组的可能组合l是是R、S的无条件连接,使任意两个的无条件连接,使任意两个关系的信息能组合在一起关系的信息能组合在一起集合运算笛卡儿积()关系运算除()关系运算除()关系代数专门的关系运算l选择、投影、连接、除法选择、投

12、影、连接、除法关系运算选择()从关系从关系R中选择符合条件的元组构成新的关中选择符合条件的元组构成新的关系系F(R),表示从表示从R中选择满足条件中选择满足条件(使逻辑表达使逻辑表达式式F为真为真)的元组的元组行的运算行的运算关系运算选择()l例例: ssex = 男男 AND sdep = IS(Student) 关系运算投影()从关系从关系R中选择若干属性组成新的关系中选择若干属性组成新的关系A1,A2,An(R),表示从表示从R中选择属性集中选择属性集A1,A2,An组成新的关系组成新的关系列的运算列的运算投影运算的结果中投影运算的结果中,也要去除可能的重复元也要去除可能的重复元组组关系

13、运算投影()l例例: ssex,sage(student)关系代数改名() 对关系对关系R实施改名运算,可显式地改变关系名实施改名运算,可显式地改变关系名及属性名及属性名 将关系将关系R改名为改名为S:s(R) 将关系将关系R(B1,B2,Bn)改名)改名 S(A1,A2,An):): S(A1,A2,An)(R)关系运算条件连接()l从RS的结果集中,选取在指定的属性集上满足条件的元组,组成新的关系l是一个关于属性集的逻辑表达式lR S关系运算条件连接()两个表的运算属性在结果表中都要出现关系运算等值连接()RSR.B=S.B关系运算自然连接( )l从RS的结果集中,选取在某些公共属性上具有

14、相同值的元组,组成新的关系lR、S的公共属性l属性集的交集(名称及类型相同)l公共属性在结果中只出现一次l例: student sc关系运算自然连接( )RS两个表的运算属性在结果表中只出现一个l关系关系代数包含两类运算:代数包含两类运算:l传统的集合运算,如并、交、差、广义笛卡儿积,传统的集合运算,如并、交、差、广义笛卡儿积,这类运算将关系看成元组的集合,其运算是从关系这类运算将关系看成元组的集合,其运算是从关系的的“水平水平”方向即行的角度来进行的。方向即行的角度来进行的。l专门的关系运算,如选择、投影、连接、除,这类专门的关系运算,如选择、投影、连接、除,这类运算不仅涉及行,而且涉及列。

15、运算不仅涉及行,而且涉及列。l关系运算的运算对象是关系,结果也是关系关系运算的运算对象是关系,结果也是关系l关系代数的运算符有:关系代数的运算符有:l集合运算符:集合运算符:(并并) (交交) (差差) (广义笛卡儿积广义笛卡儿积)l专门的关系运算符:专门的关系运算符:(选择选择) (投影投影) (连接连接) *(自自然连接然连接) (除除)算术比较符算术比较符=,=,逻辑运算符:逻辑运算符:(AND) (OR) (NOT)1. 关系并运算:关系关系并运算:关系R和关系和关系S的所有元组的合并,的所有元组的合并,在删去重复的元组,组成一个新关系,记作:在删去重复的元组,组成一个新关系,记作:R

16、S2. 关系差运算:在关系关系差运算:在关系R中删去与关系中删去与关系S中相同的元中相同的元组,组成一个新关系,记作:组,组成一个新关系,记作:RS3. 关系交运算:在两个关系关系交运算:在两个关系R与与S中取相同的元组,中取相同的元组,组成一个新关系,记作:组成一个新关系,记作:RS4. 广义笛卡儿积:两个元组个数分别为广义笛卡儿积:两个元组个数分别为n、m的关系的关系R和和S的广义笛卡儿积是一个(的广义笛卡儿积是一个( n m )元组的集)元组的集合,记作:合,记作:RS传统的集合运算l它是二目元算,其中它是二目元算,其中R和和S要求是同类关系要求是同类关系(除广义笛卡儿积运算)它能实现关

17、系数据(除广义笛卡儿积运算)它能实现关系数据库的许多基本操作库的许多基本操作l并运算实现数据记录的添加和插入并运算实现数据记录的添加和插入l差运算实现数据记录的删除差运算实现数据记录的删除l数据记录的修改则是通过先删除,后插入这两步数据记录的修改则是通过先删除,后插入这两步完成的完成的传统的集合运算1. 选择:是在指定的关系中,按给定的条件选取其中的选择:是在指定的关系中,按给定的条件选取其中的若干个元组,组成一个新的关系运算。记作:若干个元组,组成一个新的关系运算。记作:P(R)lP为布尔函数,可由运算对象为布尔函数,可由运算对象(属性名、常数、简属性名、常数、简单函数单函数)、算术比较符合

18、逻辑运算符连接起来的表、算术比较符合逻辑运算符连接起来的表达式组成。达式组成。l选择是单目运算选择是单目运算l选择是从关系的水平方向选择是从关系的水平方向(行行)的角度进行运算的角度进行运算l例:求计算机系例:求计算机系CS的学生基本情况的学生基本情况DEP=CS(S)专门的关系运算2. 投影:是在指定的关系投影:是在指定的关系R中中,根据从左到右的次序根据从左到右的次序,按按照指定的若干属性及它们的顺序取出各列照指定的若干属性及它们的顺序取出各列,在删去结在删去结果中重复元组果中重复元组,组成一个关系。记作:组成一个关系。记作:X(R)l X为选取的属性集合为选取的属性集合l投影是单目运算投

19、影是单目运算l投影是从关系的垂直方向上投影是从关系的垂直方向上(列的调度列的调度)取子集取子集l例:在关系例:在关系S中选取学生姓名和所在系中选取学生姓名和所在系SN,DEP(S)专门的关系运算l3. 连接:是从两个关系连接:是从两个关系R、S的笛卡儿积中选取满足连接条件的那的笛卡儿积中选取满足连接条件的那些元组。记作:些元组。记作:lXY为连接条件为连接条件l当当为为“=”,称为等值连接,称为等值连接l连接运算是二目运算连接运算是二目运算l连接结果是一个(连接结果是一个(n+m)元运算)元运算l举例:举例:专门的关系运算l4. 自然连接:对于关系自然连接:对于关系R、S,在等值连接的情况下,

20、在等值连接的情况下,当连接属性当连接属性X与与Y具有相同的属性名时,则关系具有相同的属性名时,则关系R与与S的的连接称为自然连接。记作:连接称为自然连接。记作:R*Sl在自然连接构成的结果关系中,相同的属性名不必在自然连接构成的结果关系中,相同的属性名不必重复。重复。l自然连接是组装关系的有效方法自然连接是组装关系的有效方法l例:求选修了例:求选修了G课程的学生姓名和成绩课程的学生姓名和成绩SN,GRADE(#C(CN=G(C)*(SC)* S#,SN(S)专门的关系运算5. 除法:它使用除数关系除法:它使用除数关系S(Z)在被除数关系在被除数关系R(X,Y)中取中取商关系,记作:商关系,记作

21、:RSlY和和Z具有相同的属性数目具有相同的属性数目,且对应属性出自相同的且对应属性出自相同的域域l商关系是关系商关系是关系R在属性在属性X上投影的一个子集上投影的一个子集l举例:举例:l关系代数代数表达式的运算结果是一个关系关系代数代数表达式的运算结果是一个关系l关系数据库的关系数据库的DML语言至少支持选取、投影语言至少支持选取、投影和连接三种运算和连接三种运算专门的关系运算关系代数实例关系代数实例1l查询选修了2号课程的学生的学号l课程号、学号SC表关系代数实例1l2号课程的选课情况lcno=2(SC)关系代数实例1l选修2号课程的学号lsno(cno=2(SC)关系代数实例2l列出选修数学课的学生的学号、姓名以及成绩l学号、姓名Student表l课程名称Course表l成绩SC表lStudent SCCoursesnocno关系代数实例2l数学课lcno = 数学 (Course)关系代数实例2关系代数实例2l选修数学课的记录lSC (cno = 数学 (Course)关系代数实例2l选修数学的学生记录lStudent (SC (cno = 数学 (Course)关系代数实例2l 选修数学的学生的学号、姓名、成绩sno,sname,gradeStudent (SC (cno = 数学 (Course)关系代数实例2

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

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(数据库课件ch2.ppt)为本站会员(三亚风情)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|