数据库课件ch2.ppt
- 文档编号:2680056
- 上传时间:2022-11-07
- 格式:PPT
- 页数:50
- 大小:1.13MB
数据库课件ch2.ppt
《数据库课件ch2.ppt》由会员分享,可在线阅读,更多相关《数据库课件ch2.ppt(50页珍藏版)》请在冰豆网上搜索。
第二章关系数据库2.1关系模型概述关系模型概述2.2关系数据结构级形式化定义关系数据结构级形式化定义2.3关系的完整性关系的完整性2.1关系模型关系模型数据模型的组成要素:
数据模型的组成要素:
数据模型通常由数据结构、数据操作、数据模型通常由数据结构、数据操作、和完整性约束三部分组成。
和完整性约束三部分组成。
(1)数据结构数据结构数据结构是所研究的对象类型(数据结构是所研究的对象类型(ObjectType)的集合。
这些对象是数据库的的集合。
这些对象是数据库的组成部分。
一般可分为两类:
一类是与数据类型、内容、性质有关的对象,如网组成部分。
一般可分为两类:
一类是与数据类型、内容、性质有关的对象,如网状模型中的数据项、记录,关系模型中的属性、关系等;一类是与数据之间联系状模型中的数据项、记录,关系模型中的属性、关系等;一类是与数据之间联系有关的对象,如网状模型中的系型(有关的对象,如网状模型中的系型(SetType)等。
等。
(2)数据操作数据操作数据操作是指对数据库中各种对象(型)的实例(值)允许执行的操作的集数据操作是指对数据库中各种对象(型)的实例(值)允许执行的操作的集合。
数据库主要有检索和更新(插入、删除、修改)两大类操作。
合。
数据库主要有检索和更新(插入、删除、修改)两大类操作。
数据结构是对系统静态特性的描述,数据操作是对系统动态特性的描述。
数据结构是对系统静态特性的描述,数据操作是对系统动态特性的描述。
(3)数据的约束条件数据的约束条件数据的约束条件是完整性规则的集合。
完整性规则是给定的数据模型中数据数据的约束条件是完整性规则的集合。
完整性规则是给定的数据模型中数据及其联系所具有的制约和依存规则,用以限定符合数据模型的数据状态以及状态及其联系所具有的制约和依存规则,用以限定符合数据模型的数据状态以及状态的变化,以保证数据的正确、有效、相容的变化,以保证数据的正确、有效、相容。
关系数据模型的组成要素:
关系数据模型的组成要素:
1)关系数据结构:
实体及联系统一用二维表表示(关系)。
关系数据结构:
实体及联系统一用二维表表示(关系)。
2)关系操作关系操作3)关系完整性约束关系完整性约束实体完整性参照完整性用户定义完整性选择投影连接除并交差积增加删除修改专门的关系运算传统的集合运算更新操作查询操作学号姓名年龄1aaa202bbb213ccc20关系数据结构:
关系数据结构:
1.概念:
域,笛卡儿积,关系。
概念:
域,笛卡儿积,关系。
侯选码:
关系中的某一属性组的值能唯一地标识一个元组,侯选码:
关系中的某一属性组的值能唯一地标识一个元组,则称该属性组为侯选码。
则称该属性组为侯选码。
主码:
若一个关系有多个侯选码,则选定其中一个为主码。
主码:
若一个关系有多个侯选码,则选定其中一个为主码。
主属性:
包含在侯选码中的诸属性称为主属性。
主属性:
包含在侯选码中的诸属性称为主属性。
非主属性:
不包含在任何侯选码中的属性称为非主属性。
非主属性:
不包含在任何侯选码中的属性称为非主属性。
关系:
一组域上的笛卡儿积的子集给定一组域D1,D2,Dn,这些域中可以有相同的。
D1,D2,Dn的笛卡儿积为:
D1D2Dn=(d1,d2,dn)|diDi,i=1,2,n其中,每一个元素(d1,d2,dn)叫作一个n元组(n-tuple)或简称元组学号姓名年龄1aaa202bbb213ccc20l基本关系的性质基本关系的性质l关系规范化:
关系规范化:
l规范化关系的最基本要求是每一个分量规范化关系的最基本要求是每一个分量(列列)必须是不可再分的必须是不可再分的(第一范式第一范式)。
l关系数据库:
关系数据库:
l所以实体之间的联系所构成的关系的集合。
所以实体之间的联系所构成的关系的集合。
l关系完整性:
关系完整性:
1.实体完整性:
实体完整性:
关系的主码不能为空。
关系的主码不能为空。
2.参照完整性:
参照完整性:
对两个关系对两个关系R,S而言,如果而言,如果R的属性(或属性组)的属性(或属性组)F与关系与关系S的主码的主码KS相对应,则称相对应,则称F是是R的外码。
的外码。
列是同质的,即数据类型一样;列顺序无关紧要;任意两个元组(行)不能相同(完全);分量(列)必须取原子值(不可再分);不同的列(但数据类型基本相同)可出自同一域。
姓名工资1工资2张三500600李四400500工资姓名工资1工资2张三600500李四500400l用户定义的完整性:
用户定义的完整性:
l某一具体的数据库的属性及其关系所应满足的条件。
某一具体的数据库的属性及其关系所应满足的条件。
例如:
年龄例如:
年龄15,体重,体重50Kg。
l小结:
小结:
实体完整性和参照完整性是所有关系数据库都支持的称实体完整性和参照完整性是所有关系数据库都支持的称为关系的两个不变性。
为关系的两个不变性。
学号姓名年龄学历1aaa2bbb3ccc4ddd5eee学号数学英语化学12345主码(主键):
学号侯选码(键):
学号,姓名主属性:
学号,姓名RSl关系操作关系操作关系模型给出了关系操作的能力和特点,但不对关系模型给出了关系操作的能力和特点,但不对DBMS的语言给出具体的语法要求。
的语言给出具体的语法要求。
l关系语言的特点是高度非过程化。
关系语言的特点是高度非过程化。
l关系操作能力是用两种方式表示的:
关系代数和关系演算,关系操作能力是用两种方式表示的:
关系代数和关系演算,它们的功能是等价的。
它们的功能是等价的。
例如:
SELECT姓名,年龄FORM学生表WHERE年龄50关系操作的能力常用关系代数表示1)选择(Selection)2)投影(Projection)3)连接(Join)4)除(Division)5)并(Union)6)交(Intersection)7)差(SetDifference)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一个元素在并集中只出现一次一个元素在并集中只出现一次lR和和S必须同类型(属性集相同、次序必须同类型(属性集相同、次序相同,但属性名可以不同)相同,但属性名可以不同)RS集合运算并Union()集合运算交Intersect()lR和和S的交,的交,RS,是在是在R和和S中都存在中都存在的元素的集合的元素的集合l一个元素在交集中只出现一次一个元素在交集中只出现一次lR和和S必须同类型(属性集相同、次序必须同类型(属性集相同、次序相同,但属性名可以不同)相同,但属性名可以不同)RS集合运算交Intersect()集合运算差Minus(-)lR和和S的差,的差,R-S,是在是在R中而不在中而不在S中中的元素的集合的元素的集合lR和和S必须同类型(属性集相同、次序必须同类型(属性集相同、次序相同,但属性名可以不同)相同,但属性名可以不同)R-S集合运算差Minus(-)集合运算笛卡儿积()l关系关系R、S的笛卡儿积是两个关系的元的笛卡儿积是两个关系的元组对的集合所组成的新关系组对的集合所组成的新关系lRS:
l属性属性是是R和和S的组合(有重复)的组合(有重复)l元组元组是是R和和S所有元组的可能组合所有元组的可能组合l是是R、S的无条件连接,使任意两个关的无条件连接,使任意两个关系的信息能组合在一起系的信息能组合在一起集合运算笛卡儿积()关系运算除()关系运算除()关系代数专门的关系运算l选择、投影、连接、除法选择、投影、连接、除法关系运算选择()从关系从关系R中选择符合条件的元组构成新的关中选择符合条件的元组构成新的关系系F(R),表示从表示从R中选择满足条件中选择满足条件(使逻辑表使逻辑表达式达式F为真为真)的元组的元组行的运算行的运算关系运算选择()l例例:
ssex=男男ANDsdep=IS(Student)关系运算投影()从关系从关系R中选择若干属性组成新的关系中选择若干属性组成新的关系A1,A2,An(R),表示从表示从R中选择属性集中选择属性集A1,A2,An组成新的关系组成新的关系列的运算列的运算投影运算的结果中投影运算的结果中,也要去除可能的重复元也要去除可能的重复元组组关系运算投影()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是一个关于属性集的逻辑表达式lRS关系运算条件连接()两个表的运算属性在结果表中都要出现关系运算等值连接()RSR.B=S.B关系运算自然连接()l从RS的结果集中,选取在某些公共属性上具有相同值的元组,组成新的关系lR、S的公共属性l属性集的交集(名称及类型相同)l公共属性在结果中只出现一次l例:
studentsc关系运算自然连接()RS两个表的运算属性在结果表中只出现一个l关系关系代数包含两类运算:
代数包含两类运算:
l传统的集合运算,如并、交、差、广义笛卡儿积,传统的集合运算,如并、交、差、广义笛卡儿积,这类运算将关系看成元组的集合,其运算是从关系这类运算将关系看成元组的集合,其运算是从关系的的“水平水平”方向即行的角度来进行的。
方向即行的角度来进行的。
l专门的关系运算,如选择、投影、连接、除,这类专门的关系运算,如选择、投影、连接、除,这类运算不仅涉及行,而且涉及列。
运算不仅涉及行,而且涉及列。
l关系运算的运算对象是关系,结果也是关系关系运算的运算对象是关系,结果也是关系l关系代数的运算符有:
关系代数的运算符有:
l集合运算符:
集合运算符:
(并并)(交交)(差差)(广义笛卡儿积广义笛卡儿积)l专门的关系运算符:
专门的关系运算符:
(选择选择)(投影投影)(连接连接)*(自然连接自然连接)(除除)算术比较符算术比较符=,=,逻辑运算符:
逻辑运算符:
(AND)(OR)(NOT)1.关系并运算:
关系关系并运算:
关系R和关系和关系S的所有元组的合并,的所有元组的合并,在删去重复的元组,组成一个新关系,记作:
在删去重复的元组,组成一个新关系,记作:
RS2.关系差运算:
在关系关系差运算:
在关系R中删去与关系中删去与关系S中相同的元中相同的元组,组成一个新关系,记作:
组,组成一个新关系,记作:
RS3.关系交运算:
在两个关系关系交运算:
在两个关系R与与S中取相同的元组,中取相同的元组,组成一个新关系,记作:
组成一个新关系,记作:
RS4.广义笛卡儿积:
两个元组个数分别为广义笛卡儿积:
两个元组个数分别为n、m的关系的关系R和和S的广义笛卡儿积是一个(的广义笛卡儿积是一个(nm)元组的集元组的集合,记作:
合,记作:
RS传统的集合运算l它是二目元算,其中它是二目元算,其中R和和S要求是同类关系要求是同类关系(除广义笛卡儿积运算)它能实现关系数据(除广义笛卡儿积运算)它能实现关系数据库的许多基本操作库的许多基本操作l并运算实现数据记录的添加和插入并运算实现数据记录的添加和插入l差运算实现数据记录的删除差运算实现数据记录的删除l数据记录的修改则是通过先删除,后插入这两步数据记录的修改则是通过先删除,后插入这两步完成的完成的传统的集合运算1.选择:
是在指定的关系中,按给定的条件选取其中的选择:
是在指定的关系中,按给定的条件选取其中的若干个元组,组成一个新的关系运算。
记作:
若干个元组,组成一个新的关系运算。
记作:
P(R)lP为布尔函数,可由运算对象为布尔函数,可由运算对象(属性名、常数、简属性名、常数、简单
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 课件 ch2