演示文稿数据库精品课仅供个人学习第二章_第1页
演示文稿数据库精品课仅供个人学习第二章_第2页
演示文稿数据库精品课仅供个人学习第二章_第3页
演示文稿数据库精品课仅供个人学习第二章_第4页
演示文稿数据库精品课仅供个人学习第二章_第5页
已阅读5页,还剩109页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

TheoryofDatabase1(优选)数据库精品课仅供个人学习第二章ppt讲解现在是1页\一共有114页\编辑于星期五关系数据库简介提出关系模型的是美国IBM公司的1970年提出关系数据模型E.F.Codd,“ARelationalModelofDataforLargeSharedDataBanks”,《CommunicationoftheACM》,1970之后,提出了关系代数和关系演算的概念1972年提出了关系的第一、第二、第三范式1974年提出了关系的BCNF范式现在是2页\一共有114页\编辑于星期五第二章关系数据库2.1关系数据结构及形式化定义2.2关系操作2.3关系的完整性2.4关系代数2.5关系演算2.6小结现在是3页\一共有114页\编辑于星期五2.1关系数据结构及形式化定义2.1.1关系2.1.2关系模式2.1.3关系数据库现在是4页\一共有114页\编辑于星期五

关系单一的数据结构----关系现实世界的实体以及实体间的各种联系均用关系来表示逻辑结构----二维表从用户角度,关系模型中数据的逻辑结构是一张二维表建立在集合代数的基础上现在是5页\一共有114页\编辑于星期五关系(续)⒈域(Domain)

2.笛卡尔积(CartesianProduct)

3.关系(Relation)现在是6页\一共有114页\编辑于星期五⒈域(Domain)

域是一组具有相同数据类型的值的集合。整数实数介于某个取值范围的整数指定长度的字符串集合{‘男’,‘女’}……………..

例:现在是7页\一共有114页\编辑于星期五2.笛卡尔积(CartesianProduct)

笛卡尔积给定一组域D1,D2,…,Dn,这些域中可以有相同的。

D1,D2,…,Dn的笛卡尔积为:

D1×D2×…Dn={(d1,d2,…dn)|diDi,i=1,2,…n}

所有域的所有取值的一个组合,不能重复例如:有一组域

D1=导师集合={张清玫、刘逸};

D2=专业集合={计算机专业、信息专业};

D3=学生集合={王敏、刘晨、李勇};现在是8页\一共有114页\编辑于星期五

表2.1D1,D2,D3的笛卡尔积导师学生专业张清玫计算机专业李勇张清玫张清玫张清玫张清玫张清玫计算机专业计算机专业信息专业信息专业信息专业刘晨王敏刘晨王敏李勇刘逸计算机专业计算机专业信息专业信息专业信息专业计算机专业刘逸刘逸刘逸刘逸刘逸刘晨王敏李勇刘晨王敏李勇现在是9页\一共有114页\编辑于星期五笛卡尔积(续)

元组(Tuple)笛卡尔积中每一个元素(d1,d2,…,dn)叫作一个n元组或简称元组。例如,(张清玫,计算机专业,王敏)、

(张清玫,计算机专业,刘晨)等都是元组。

分量(Component)笛卡尔积元素(d1,d2,…,dn)中的每一个值di叫作一个分量。例如,张清玫、计算机专业、刘晨等都是分量。

现在是10页\一共有114页\编辑于星期五笛卡尔积(续)

基数(Cardinalnumber)若Di(i=1,2,…,n)为有限集,其基数为mi(i=1,2,…,n),则D1×D2×…×Dn的基数M为:

笛卡尔积的表示方法笛卡尔积可表示为一个二维表表中的每行对应一个元组,表中的每列对应一个域现在是11页\一共有114页\编辑于星期五3.关系(Relation)1)关系

D1×D2×…×Dn的子集叫作在域D1,D2,…,Dn上的关系,表示为

R(D1,D2,…,Dn)R:关系名n:关系的目或度(Degree)关系满足的条件:具有实际意义的子集;域的顺序可以颠倒。现在是12页\一共有114页\编辑于星期五关系(续)2)元组3)单元关系与二元关系关系中的每个元素是关系中的元组,通常用t表示。当n=1时,称该关系为单元关系(Unaryrelation)或一元关系当n=2时,称该关系为二元关系(Binaryrelation)现在是13页\一共有114页\编辑于星期五关系(续)4)

关系的表示关系也是一个二维表,表的每行对应一个元组,表的每列对应一个域域元组现在是14页\一共有114页\编辑于星期五关系(续)5)属性关系中不同列可以对应相同的域为了加以区分,必须对每列起一个名字,称为属性(Attribute)n目关系必有n个属性现在是15页\一共有114页\编辑于星期五关系(续)6)码候选码若关系中的某一最小属性组能唯一地标识一个元组,则称该属性组为候选码。简单的情况:候选码只包含一个属性全码

最极端的情况:关系模式的所有属性组是这个关系模式的候选码,称为全码(All-key)现在是16页\一共有114页\编辑于星期五关系(续)主码

若一个关系有多个候选码,则选定其中一个为主码(Primarykey)主属性

候选码的诸属性称为主属性(Primeattribute)不包含在任何侯选码中的属性称为非主属性(Non-Primeattribute)或非码属性(Non-keyattribute)现在是17页\一共有114页\编辑于星期五关系(续)7)三类关系基本关系(基本表或基表)实际存在的表,是实际存储数据的表查询表查询结果对应的表视图表由基本表或其他视图表导出的表,是虚表,不实际存储数据现在是18页\一共有114页\编辑于星期五关系(续)8)基本关系的性质

①列是同质的(Homogeneous)②不同的列可出自同一个域其中的每一列称为一个属性不同的属性要给予不同的属性名③列的顺序无所谓(列的次序可以任意交换)④任意两个元组的候选码不能相同⑤行的顺序无所谓(行的次序可以任意交换)⑥分量必须取原子值现在是19页\一共有114页\编辑于星期五2.1关系数据结构2.1.1关系2.1.2关系模式2.1.3关系数据库现在是20页\一共有114页\编辑于星期五2.1.2关系模式1.什么是关系模式2.定义关系模式3.关系模式与关系现在是21页\一共有114页\编辑于星期五1.什么是关系模式关系模式(RelationSchema)是型关系是值关系模式是对关系的描述元组集合的结构元组语义以及完整性约束条件属性间的数据依赖关系集合属性构成属性来自的域属性与域之间的映象关系现在是22页\一共有114页\编辑于星期五2.定义关系模式关系模式可以形式化地表示为:

R(U,D,DOM,F)

R关系名

U

组成该关系的属性名集合

D

属性组U中属性所来自的域

DOM属性向域的映像集合

F

属性间的数据依赖关系集合现在是23页\一共有114页\编辑于星期五定义关系模式(续)关系模式通常可以简记为

R(U)或R(A1,A2,…,An)R:关系名

A1,A2,…,An:属性名注:域名及属性向域的映像常常直接说明为属性的类型、长度现在是24页\一共有114页\编辑于星期五3.关系模式与关系关系模式对关系的描述静态的、稳定的关系关系模式在某一时刻的状态或内容动态的、随时间不断变化的关系模式和关系往往统称为关系,通过上下文加以区别现在是25页\一共有114页\编辑于星期五2.1关系数据结构2.1.1关系2.1.2关系模式2.1.3关系数据库现在是26页\一共有114页\编辑于星期五2.1.3关系数据库关系数据库:在一个给定的应用领域中,所有关系的集合构成一个关系数据库。关系数据库型值现在是27页\一共有114页\编辑于星期五2.关系数据库的型与值关系数据库的型:关系数据库模式

对关系数据库的描述。关系数据库模式包括若干域的定义在这些域上定义的若干关系模式关系数据库的值:关系模式在某一时刻对应的关系的集合,简称为关系数据库。现在是28页\一共有114页\编辑于星期五第二章关系数据库2.1关系模型概述2.2关系操作2.3关系的完整性2.4关系代数2.5关系演算2.6小结现在是29页\一共有114页\编辑于星期五基本关系操作

查询:并、交、差、笛卡尔积、选择、投影、连接、除数据更新:插入、删除、修改查询的表达能力是其中最主要的部分并、差、笛卡尔积、选择、投影是5种基本操作

集合操作方式:操作的对象和结果都是集合,一次一集合的方式常用的关系操作关系操作的特点现在是30页\一共有114页\编辑于星期五2.2.2关系数据库语言的分类关系代数语言:代表:ISBL关系演算语言:元组关系演算语言谓词变元的基本对象是元组变量代表:ALPHA,QUEL域关系演算语言

谓词变元的基本对象是域变量代表:QBE具有关系代数和关系演算双重特点的语言代表:SQL(StructuredQueryLanguage)用对关系的运算来表达查询要求用谓词来表达查询要求现在是31页\一共有114页\编辑于星期五第二章关系数据库2.1关系数据结构及形式化定义2.2关系操作2.3关系的完整性2.4关系代数2.5关系演算2.6小结现在是32页\一共有114页\编辑于星期五2.3关系的完整性2.3.1关系的三类完整性约束2.3.2实体完整性2.3.3参照完整性2.3.4用户定义的完整性现在是33页\一共有114页\编辑于星期五2.3.1关系的三类完整性约束实体完整性和参照完整性:关系模型必须满足的完整性约束条件称为关系的两个不变性,应该由关系系统自动支持用户定义的完整性:应用领域需要遵循的约束条件,体现了具体领域中的语义约束现在是34页\一共有114页\编辑于星期五2.3关系的完整性关系的三类完整性约束2.3.2实体完整性2.3.3参照完整性2.3.4用户定义的完整性现在是35页\一共有114页\编辑于星期五2.3.2实体完整性规则2.1实体完整性规则(EntityIntegrity)若属性A是基本关系R的主属性,则属性A不能取空值。例:student(学号,姓名,性别,专业)主码学号不能取空值现在是36页\一共有114页\编辑于星期五实体完整性(续)实体完整性规则的说明

(1)实体完整性规则是针对基本关系而言的。一个基本表通常对应现实世界的一个实体集。

(2)现实世界的实体是可区分的,即它们具有某种唯一性标识。

(3)关系模型中以主码作为唯一性标识。

(4)主码中的属性即主属性不能取空值。如果主属性取空值,就说明存在某个不可标识的实体,即存在不可区分的实体,这与第(2)点相矛盾,因此这个规则称为实体完整性。现在是37页\一共有114页\编辑于星期五2.3关系的完整性关系的三类完整性约束2.3.2实体完整性2.3.3参照完整性2.3.4用户定义的完整性现在是38页\一共有114页\编辑于星期五2.3.3参照完整性1.关系间的引用2.外码3.参照完整性规则现在是39页\一共有114页\编辑于星期五1.关系间的引用

在关系模型中实体及实体间的联系都是用关系来描述的,因此,可能存在着关系与关系间的引用。

例1:学生实体、专业实体

学生(学号,姓名,性别,专业号,年龄)专业(专业号,专业名)学生关系引用了专业关系的主码“专业号”。学生关系中的“专业号”值必须是确实存在的专业的专业号,即专业关系中有该专业的记录。主码主码现在是40页\一共有114页\编辑于星期五关系间的引用(续)例2:学生、课程、学生与课程之间的多对多联系学生(学号,姓名,性别,专业号,年龄)课程(课程号,课程名,学分)选修(学号,课程号,成绩)现在是41页\一共有114页\编辑于星期五关系间的引用(续)例3:学生实体及其内部的一对多联系学生(学号,姓名,性别,专业号,年龄,班长)“班长”必须是确实存在的学生的学号

主码外码,引用了本关系的“学号”现在是42页\一共有114页\编辑于星期五2.外码(ForeignKey)设F是基本关系R的一个或一组属性,如果F与基本关系S的主码Ks相对应,则称F是基本关系R的外码基本关系R称为参照关系(ReferencingRelation)基本关系S称为被参照关系(ReferencedRelation)或目标关系(TargetRelation)(被引用表)现在是43页\一共有114页\编辑于星期五外码(续)例1:学生关系专业关系的相对应 学生(学号,…专业号) 专业(专业号,…)学生关系专业关系专业号参照关系被参照关系学生关系的外码(a)现在是44页\一共有114页\编辑于星期五外码(续)选修关系的“课程号”与课程关系的主码“课程号”相对应学生关系选修关系课程关系(b)学号课程号被参照关系被参照关系参照关系选修关系的外码选修关系的外码例2:选修关系的“学号”与学生关系的主码“学号”相对应现在是45页\一共有114页\编辑于星期五外码(续)例3:“班长”与本身的主码“学号”相对应“班长”是外码参照关系被参照关系现在是46页\一共有114页\编辑于星期五3.参照完整性规则

规则2.2参照完整性规则

若属性(或属性组)F是基本关系R的外码它与基本关系S的主码Ks相对应(基本关系R和S不一定是不同的关系),则对于R中每个元组在F上的值必须为:或者取空值(F的每个属性值均为空值)或者等于S中(被引用表)某个元组的主码值现在是47页\一共有114页\编辑于星期五参照完整性规则(续)例1:学生关系中每个元组的“专业号”属性只取两类值:(1)空值,表示尚未给该学生分配专业(2)非空值,这时该值必须是专业关系中某个元组的“专业号”值,表示该学生不可能分配一个不存在的专业。现在是48页\一共有114页\编辑于星期五参照完整性规则(续)例2:选修(学号,课程号,成绩)“学号”和“课程号”可能的取值:

(1)选修关系中的主属性,不能取空值(2)只能取相应被参照关系中已经存在的主码值现在是49页\一共有114页\编辑于星期五参照完整性规则(续)例3:学生(学号,姓名,性别,专业号,年龄,班长)

“班长”属性值可以取两类值:(1)空值,表示该学生所在班级尚未选出班长(2)非空值,该值必须是本关系中某个元组的学号值现在是50页\一共有114页\编辑于星期五关系的完整性(续)关系的三类完整性约束2.3.2实体完整性2.3.3参照完整性2.3.4用户定义的完整性现在是51页\一共有114页\编辑于星期五2.3.4用户定义的完整性针对某一具体关系数据库的约束条件,反映某一具体应用所涉及的数据必须满足的语义要求。关系模型应提供定义和检验这类完整性的机制,以便用统一的系统的方法处理它们,而不要由应用程序承担这一功能。现在是52页\一共有114页\编辑于星期五用户定义的完整性(续)例:课程(课程号,课程名,学分)“课程号”属性必须取唯一值非主属性“课程名”也不能取空值“学分”属性只能取值{1,2,3,4}现在是53页\一共有114页\编辑于星期五第二章关系数据库2.1关系模型概述2.2关系数据结构2.3关系的完整性2.4关系代数2.5关系演算2.6小结现在是54页\一共有114页\编辑于星期五2.4

关系代数

概述传统的集合运算专门的关系运算现在是55页\一共有114页\编辑于星期五表2.4关系代数运算符

概述运算符含义运算符含义集合运算符比较运算符∪-∩×并差交笛卡尔积>≥<≤=<>大于大于等于小于小于等于等于不等于现在是56页\一共有114页\编辑于星期五表2.4关系代数运算符(续)概述(续)运算符含义运算符含义σπ

÷选择投影连接除逻辑运算符专门的关系运算符∧∨非与或现在是57页\一共有114页\编辑于星期五2.4

关系代数

概述

传统的集合运算

专门的关系运算现在是58页\一共有114页\编辑于星期五1.并(Union)R和S具有相同的目n(即两个关系都有n个属性)相应的属性取自同一个域R∪S

仍为n目关系,由属于R或属于S的元组组成

R∪S={t|t

R∨tS}现在是59页\一共有114页\编辑于星期五并(续)RABCa1a1a2b1b2b2c1c1c2SABCa1a1a2b2b3b2c2c1c2R∪SABCa1a1a2b2b1b2c1c1c2a1b3c2∪现在是60页\一共有114页\编辑于星期五2.差(Difference)R和S具有相同的目n相应的属性取自同一个域R-S

仍为n目关系,由属于R而不属于S的所有元组组成

R-S={t|tR∧tS}现在是61页\一共有114页\编辑于星期五差(续)RABCa1a1a2b1b2b2c1c1c2SABCa1a1a2b2b3b2c2c1c2R-SABCa1b1c1-现在是62页\一共有114页\编辑于星期五3.交(Intersection)R和S具有相同的目n相应的属性取自同一个域R∩S仍为n目关系,由既属于R又属于S的元组组成

R∩S={t|t

R∧tS} R∩S=R–(R-S)现在是63页\一共有114页\编辑于星期五交(续)RABCa1a1a2b1b2b2c1c1c2SABCa1a1a2b2b3b2c2c1c2R∩S∩ABCa1a2b2b2c1c2现在是64页\一共有114页\编辑于星期五4.笛卡尔积(CartesianProduct)严格地讲,应该是广义的笛卡尔积

R:n目关系,k1个元组

S:m目关系,k2个元组R×S

列:(n+m)列元组的集合元组的前n列是关系R的一个元组后m列是关系S的一个元组行:k1×k2个元组R×S={tr

ts|tr

R∧tsS}现在是65页\一共有114页\编辑于星期五笛卡尔积(续)RABCa1a1a2b1b2b2c1c1c2SABCa1a1a2b2b3b2c2c1c2R×SR.AR.BR.CS.AS.BS.Ca1b1c1a1b1c1a1b1c1a1a1a2b2b3b2c2c1c2a1a1a2b2b3b2c2c1c2a1a1a2b2b3b2c2c1c2a1b2c2a1b2c2a1b2c2a2b2c1a2b2c1a2b2c1×现在是66页\一共有114页\编辑于星期五2.4

关系代数概述传统的集合运算专门的关系运算现在是67页\一共有114页\编辑于星期五2.4.2专门的关系运算先引入几个记号(1)R,tR,t[Ai]

设关系模式为R(A1,A2,…,An)

它的一个关系设为R

tR表示t是R的一个元组

t[Ai]则表示元组t中相应于属性Ai的一个分量现在是68页\一共有114页\编辑于星期五专门的关系运算(续)(2)A,t[A],A

若A={Ai1,Ai2,…,Aik},其中Ai1,Ai2,…,Aik是A1,A2,…,An中的一部分,则A称为属性列或属性组。

t[A]=(t[Ai1],t[Ai2],…,t[Aik])表示元组t在属性列A上诸分量的集合。

A则表示{A1,A2,…,An}中去掉{Ai1,Ai2,…,Aik}后剩余的属性组。

例如:学生(学号,姓名,性别,年龄,专业,身高,体重……)A现在是69页\一共有114页\编辑于星期五专门的关系运算(续)(3)trtsR为n目关系,S为m目关系。

trR,tsS,trts称为元组的连接。

trts是一个n+m列的元组,前n个分量为R中的一个n元组,后m个分量为S中的一个m元组。现在是70页\一共有114页\编辑于星期五专门的关系运算(续)(4)像集Zx

给定一个关系R(X,Z),X和Z为属性组。当t[X]=x时,x在R中的像集(ImagesSet)为:

Zx={t[Z]|tR,t[X]=x}

它表示R中属性组X上值为x的诸元组在Z上分量的集合现在是71页\一共有114页\编辑于星期五专门的关系运算(续)像集举例

x1在R中的像集Zx1

={Z1,Z2,Z3}x2在R中的像集Zx2

={Z2,Z3}x3在R中的像集Zx3={Z1,Z3}x1z1x1z2x1z3x2z2x2z3x3z1x3z3R现在是72页\一共有114页\编辑于星期五专门的关系运算(续)选择投影连接除现在是73页\一共有114页\编辑于星期五专门的关系运算(续)(a)

Student学生-课程数据库:

学生关系Student、课程关系Course和选修关系SC学号Sno姓名Sname性别Ssex年龄Sage所在系Sdept200215121李勇男20CS200215122刘晨女19IS200215123王敏女18MA200215125张立男19IS现在是74页\一共有114页\编辑于星期五专门的关系运算(续)课程号Cno课程名Cname先行课Cpno学分Ccredit1数据库542数学23信息系统144操作系统635数据结构746数据处理27PASCAL语言64Course(b)现在是75页\一共有114页\编辑于星期五专门的关系运算(续)

(c)SC学号Sno课程号Cno成绩Grade200215121192200215121285200215121388200215122290200215122380现在是76页\一共有114页\编辑于星期五1.选择(Selection)1)选择又称为限制(Restriction)2)选择运算符的含义在关系R中选择满足给定条件的诸元组

σF(R)={t|tR∧F(t)='真'}F:选择条件,是一个逻辑表达式,基本形式为:

X1θY1现在是77页\一共有114页\编辑于星期五选择(续)3)选择运算是从关系R中选取使逻辑表达式F为真的元组,是从行的角度进行的运算σ现在是78页\一共有114页\编辑于星期五选择(续)例1:查询信息系(IS系)全体学生

σSdept

='IS'(Student)

或σ5='IS'(Student)SnoSnameSsexSageSdept200215122刘晨女19IS200215125张立男19IS查询结果为:现在是79页\一共有114页\编辑于星期五选择(续)例2:查询年龄小于20岁的学生

σSage<20(Student)

或σ4<20(Student)

SnoSnameSsexSageSdept200215122刘晨女19IS200215123王敏女18MA200215125张立男19IS查询结果为:现在是80页\一共有114页\编辑于星期五2.投影(Projection)1)投影运算符的含义从R中选择出若干属性列组成新的关系

πA(R)={t[A]|tR} A:R中的属性列现在是81页\一共有114页\编辑于星期五2.投影(Projection)2)投影操作主要是从列的角度进行运算π

但投影之后不仅取消了原关系中的某些列,而且还可能取消某些元组(避免重复行)现在是82页\一共有114页\编辑于星期五投影(续)例3:查询学生的姓名和所在系即求Student关系上学生姓名和所在系两个属性上的投影

πSname,Sdept(Student)

或π2,5(Student)现在是83页\一共有114页\编辑于星期五投影(续)SnameSdept李勇CS刘晨IS王敏MA张立IS查询结果为:现在是84页\一共有114页\编辑于星期五投影(续)例4:查询学生关系Student中都有哪些系。

即查询关系Student上所在系属性上的投影πSdept(Student)SdeptCSISMA查询结果为:现在是85页\一共有114页\编辑于星期五3.连接(Join)

AθBtrts连接运算从R和S的广义笛卡尔积R×S中选取(R关系)在A属性组上的值与(S关系)在B属性组上值满足比较关系θ的元组1)连接也称为θ连接2)连接运算的含义从两个关系的笛卡尔积中选取属性间满足一定条件的元组RS={|tr

R∧ts

S∧tr[A]θts[B]}A和B:分别为R和S上度数相等且可比的属性组θ:比较运算符

现在是86页\一共有114页\编辑于星期五

连接(续)3)两类常用连接运算等值连接(equijoin)什么是等值连接θ为“=”的连接运算称为等值连接

等值连接的含义从关系R与S的广义笛卡尔积中选取A、B属性值相等的那些元组,即等值连接为:

RS={|tr

R∧tsS∧tr[A]=ts[B]}A=Btrts现在是87页\一共有114页\编辑于星期五

连接(续)自然连接(Naturaljoin)

自然连接是一种特殊的等值连接两个关系中进行比较的分量必须是相同的属性组在结果中把重复的属性列去掉自然连接的含义

R和S具有相同的属性组B

R

S={|trR∧tsS∧tr[B]=ts[B]}trts现在是88页\一共有114页\编辑于星期五连接(续)4)一般的连接操作是从行的角度进行运算。

AθBRS自然连接还需要取消重复列,所以是同时从行和列的角度进行运算。现在是89页\一共有114页\编辑于星期五连接(续)例5:关系R和关系S

如下所示:ABCa1b15a1b26a2b38a2b412RBEb13b27b310b32b52S现在是90页\一共有114页\编辑于星期五连接(续)一般连接RS的结果如下:

C<EAR.BCS.BEa1b15b27a1b15b310a1b26b27a1b26b310a2b38b310注意:条件为C<E现在是91页\一共有114页\编辑于星期五连接(续)

等值连接R

S的结果如下:R.B=S.B

AR.BCS.BEa1b15b13a1b26b27a2b38b310a2b38b32现在是92页\一共有114页\编辑于星期五连接(续)

自然连接R

S的结果如下:

ABCEa1b153a1b267a2b3810a2b382现在是93页\一共有114页\编辑于星期五连接(续)外连接如果把舍弃的元组也保存在结果关系中,而在其他属性上填空值(Null),这种连接就叫做外连接(OUTERJOIN)左外连接如果只把左边关系R中要舍弃的元组保留就叫做左外连接(LEFTOUTERJOIN或LEFTJOIN)右外连接如果只把右边关系S中要舍弃的元组保留就叫做右外连接(RIGHTOUTERJOIN或RIGHTJOIN)。现在是94页\一共有114页\编辑于星期五连接(续)下图是例5中关系R和关系S的外连接

ABCEa1b153a1b267a2b3810a2b382a2b412NULLNULLb5NULL2(a)外连接现在是95页\一共有114页\编辑于星期五连接(续)ABCEa1b153a1b267a2b3810a2b382a2b412NULL图(b)是例5中关系R和关系S的左外连接,ABCEa1b153a1b267a2b3810a2b382NULLb5NULL2(b)左外连接(c)右外连接图(c)是右外连接

现在是96页\一共有114页\编辑于星期五4.除(Division)

给定关系R(X,Y)和S(Y,Z),其中X,Y,Z为属性组。R中的Y与S中的Y可以有不同的属性名,但必须出自相同的域集。

R与S的除运算得到一个新的关系P(X),P是R中满足下列条件的元组在

X属性列上的投影:元组在X上分量值x的象集Yx包含S在Y上投影的集合.记作:

R÷S={tr[X]|tr

R∧πY(S)

Yx}Yx:x在R中的象集,x=tr[X]现在是97页\一共有114页\编辑于星期五除(续)2)除操作是同时从行和列角度进行运算÷RS现在是98页\一共有114页\编辑于星期五除(续)BCDb1c2d1b2c1d1b2c3d2例6:设关系R、S分别为下图的(a)和(b),R÷S的结果为图(c)

ABCa1b1c2a2b3c7a3b4c6a1b2c3a4b6c6a2b2c3a1b2c1RAa1(c)(b)R÷SS(a)现在是99页\一共有114页\编辑于星期五分析在关系R中,A可以取四个值{a1,a2,a3,a4}

a1的象集为{(b1,c2),(b2,c3),(b2,c1)}a2的象集为{(b3,c7),(b2,c3)}a3的象集为{(b4,c6)}a4的象集为{(b6,c6)}S在(B,C)上的投影为

{(b1,c2),(b2,c1),(b2,c3)}只有a1的象集包含了S在(B,C)属性组上的投影所以R÷S={a1}现在是100页\一共有114页\编辑于星期五5.综合举例以学生-课程数据库为例(P56)例7:查询至少选修1号课程和3号课程的学生号码

首先建立一个临时关系K:

然后求:πSno,Cno(SC)÷KCno

1

3现在是101页\一共有114页\编辑于星期五综合举例(续)例7续

πSno,Cno(SC)

2002151

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论