资源描述:
《数据库原理 关系模型-第2章ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第二章关系数据库§2.1关系数据结构及形式化定义1.关系模型的数据结构以关系代数为理论基础,从用户角度来看,关系数据模型建立在表集合的基础上。2关系一组域上的笛卡儿积的任一子集。给定一组域D1,D2,…,Dn的笛卡儿积定义为:D1×D2×…×Dn={(d1,d2,…,dn)
2、di∈Di,i=1,2,…,n}其中,每一个元素(d1,d2,…,dn)叫作一个n元组(n-tuple)或简称元组3术语P42关系元组(Tuple)、属性表行、列关系的三种类型P44基本关系、查询表、视图表4关系是元组的集合元组包含若干属性表是行的集合行包含若干列每
3、个列必须有不同的名字不同的列可有相同的域码、主码概念5将关系理论运用于关系数据模型时,需要进行如下限定和扩充:(1)限定关系模型中的关系为有限集合;(2)给关系的每列一个属性名,取消了关系列的有序性。6关系模式关系的描述,称为关系模式,可形式化表示为:R(U,D,dom,F)R:关系名,U:属性名的集合;D:各属性取值域的集合;dom:属性向域的映像的集合;F:属性间数据依赖关系的集合。在大多数情况下,表示为R(U)Student(sno,sname,sage,ssex,sdept)72.关系模型中关系的性质P45(1)列是同质的,即每
4、列中的数据是同一类型(2)不同的列可出自同一域(3)列的顺序无所谓(4)任意两个元组不能完全相同(5)行的顺序无所谓(6)分量必须是原子不可再分的81.关系数据模型中对关系的操作增、删、改、查询查询是最重要的操作。2.关系语言P48关系代数、关系演算、具有关系代数和关系演算双重特点的语言§2.2关系数据模型中关系的操作及完整性93.关系模型的完整性规则是对关系的某种约束条件关系模型中可以有三类完整性约束:实体完整性参照完整性用户定义的完整性实体完整性和参照完整性是关系模型必须满足的完整性约束条件,被称为关系的两个不变性,应该由关系系统自
5、动支持。10实体完整性规则:若属性A是基本关系R的主码属性,则属性A不能取空值。实体完整性规则规定:基本关系的所有主码属性都不能取空值,而不仅是主码整体不能取空值11参照完整性(ReferentialIntegrity)规则定义了外码与主码之间的引用关系。若属性(或属性组)F是基本关系R的外码,它与基本关系S的主码K相对应,则对于R中每个元组在F上的对应值必须满足如下条件:或者取空值(F的每个属性值均为空值);或者等于S中某个元组的主码值。外码并不一定要与相应的主码同名,不过,在实际应用中,为了便于识别,当外码与相应的主码属于不同关系时
6、,往往给它们取相同的属性名。12用户定义的完整性任何关系数据库系统都应支持实体完整性和参照完整性。除此之外,不同的关系数据库系统根据应用环境的需要,还要定义一些特殊的约束条件,称为用户定义的完整性。13§2.3关系代数P52关系代数是一种抽象的查询语言通过对关系的运算表达查询操作运算对象、结果均为关系元组无重复、不考虑顺序运算并、交、差、关系运算、比较运算、逻辑运算笛卡儿积、连接、选择、投影、除投影、选择、并、差、笛卡儿积5种运算为基本运算14关系代数——运算符15集合运算——并Union(∪)R和S的并,R∪S,是在R或S或两者中的元
7、素的集合R∪S={t
8、t∈R∨t∈S}一个元素在并集中只出现一次R和S必须同类型(对应属性取自于相同的域,但属性名可以不同)R∪S16集合运算——并Union(∪)17集合运算——交Intersect(∩)R和S的交,R∩S,是在R和S中都存在的元素的集合R∩S={t
9、t∈R∧t∈S}一个元素在交集中只出现一次R和S必须同类型(对应属性取自于相同的域,但属性名可以不同)R∩S18集合运算——交Intersect(∩)19集合运算——差Minus(-)R和S的差,R-S,是在R中而不在S中的元素的集合R-S={t
10、t∈R∧tS}R和S必须
11、同类型(对应属性取自于相同的域,但属性名可以不同)R-S20集合运算——差Minus(-)21集合运算——笛卡儿积(×)R×S={trts
12、tr∈R∧ts∈S}属性是R和S的组合(有重复)元组是R和S所有元组的可能组合22集合运算——笛卡儿积(×)23关系代数——专门的关系运算选择、投影、连接、除法24关系运算——选择(σ)从关系R中选择符合条件的元组构成新的关系σF(R),表示从R中选择满足条件(使逻辑表达式F为真)的元组σF(R)={t
13、t∈R∧F(t)=true}行的运算25关系运算——选择(σ)例:σssex=‘男’ANDsde
14、p=‘IS’(Student)26关系运算——投影(π)从关系R中选择若干属性组成新的关系πA1,A2,…,An(R),表示从R中选择属性集A1,A2,…,An组成新的关系πA1,A2,…,An(R)={t