ImageVerifierCode 换一换
格式:PPT , 页数:86 ,大小:1.18MB ,
资源ID:14187064      下载积分:10 金币
快捷注册下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/14187064.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请

   平台协调中心        【在线客服】        免费申请共赢上传

权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。

注意事项

本文(数据库原理PPT.ppt)为本站上传会员【xrp****65】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

数据库原理PPT.ppt

1、单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,第,4,章 关系数据库方法,本章主要内容,本章将主要介绍关系数据数据库的基本概念,关系运算和关系表达式的优化问题,其中关系运算和关系表达式的优化问题是本课程的重点内容之一。关系运算是关系数据模型的理论基础。,(,1,)基本概念,关系形式定义,关键码(主键和外键),三类完整性规则,关系模式、关系子模式和存储模式。,(,2,)关系代数,五个基本操作及其组合操作。,(,3,)关系演算,元组关系演算和域关系演算的原子公式、公式的定义。关系演算的安全性和等价性。,(,4,)关系代数表达式的优化,关系代数表达式的等价

2、及等价转换规则,启化式优化算法。,关系数据库方法,4.1,关系数据库的基本概念,4.2,关系代数,4.3,关系演算,4.4,关系查询优化,本章小结,4.1,关系数据库的基本概念,4.1.1,关系的形式化定义,4.1.2,关系模式、关系子模式和存储模式,4.1.3,关系模型的完整性规则,4.1.4,关系数据库模式,4.1.1,关系的形式化定义,(1),1,)关系的集合表示,一个关系由若干个不同元组组成,因此,可把关系视为元组的集合。此外,关系中每个属性都有其相应的值域或简称域,(Domain),。,例如,学生性别的域是男,女,学生成绩的域是,0100,的整数集合。,假设一组域,是由,D,1,D,

3、2,,,D,n,n,个域组成。,D,1,D,2,,,D,n,上的,D,1,D,2,D,n,定义为集合:,D,1,D,2,D,n,(d,1,d,2,d,n,),d,i,D,i,,,i=1,,,2,,,,,n,其中,:,每个元素,(d,1,,,d,2,,,,,d,n,),称为一个元组。,若,D,i,(,i=1,2,n,),为有限集,其基数为,m,i,(,i=1,2,,,,,n),则,D,1,D,2,D,n,的基数为:,4.1.1,关系的形式化定义,(2),【,例,4-1,】,设有二个域教师名域,T,胡恒,丁伟、课程名域,C,C,语言,数据结构,计算机原理,由,T,和,C,的笛卡儿积定义为集合:,T

4、C,(,胡恒,,C,语言),(胡恒,数据结构),(胡恒,计算机原理),,(丁伟,,C,语言),(丁伟,数据结构),(丁伟,计算机原理),该笛卡儿积的基数为,2,3,6,,也就是说,,T,C,一共,2,3,6,个元组,.,4.1.1,关系的形式化定义,(3),如果取该笛卡儿积的这六个元素,并将它们放到一张名为,T,_,C,的二维表中,,显然,这是一个关系。于是有下面的定义,4-1,。,4.1.1,关系的形式化定义,(4),定义,4-1,:一个在域,D,1,D,2,,,D,n,上的关系,(Relation),就是笛卡儿积,D,1,D,2,D,n,的子集,用,R(D,1,D,2,,,D,n,),表

5、示,R D,1,D,2,D,n,。,关系的成员为元组,即笛卡儿积的子集的元素,(d,1,,,d,2,,,,,d,n,),。,例如,我们用教师名代替教师(假设无同名教师存在),用课程名代替课程,教师任教的课程可用关系,TC,(,教师,课程)表示,它是教师名域和课程名域的笛卡儿积,TC,的子集,任一学期教师任教的课程记录是这个关系的元组,如:,TC,(,胡恒,,C,语言),(丁伟,数据结构)表示本学期胡恒老师上,C,语言课程,丁伟老师上数据结构课程。,4.1.1,关系的形式化定义,(5),2,)关系的一阶谓词表示,关系模型不但可以用关系代数表示,还可以用一阶谓词演算表示。,定义,4-2,:设有关系

6、模式,R,,,其原子谓词表示形式为,P(t),。,其中,,P,是谓词,,t,为个体变元,以元组为其表现形式。关系,R(,元组的集合,),与谓词,P(t),之间的联系描述为:,R,t,P(t),表示所有使谓词,P,为真或满足谓词,P,的元组,t,都属于关系,R,。,关系,R,与原子谓词,P,之间的关系如下:,P(t),True,,,t,在,R,内,P(t),Fals,,,t,不在,R,内。,例:,t,姓名,tStudent AND t.,性别女,4.1.1,关系的形式化定义,(6),职工编号,姓名,部门,性别,年龄,身份证号码,2113,程晓清,销售部,男,30,310110720306405,

7、2116,刘红英,财务部,女,32,310110700508506,2136,李小刚,管理部,男,28,310110740609507,2138,蒋民,采购部,男,41,310110610808406,2141,王国洋,销售部,男,39,310110630909407,表,4.1,职工表(实体集),可将关系看成是一张二维表格。,(1),关系(表)可以看成是由行和列,(5,行和,6,列)交叉组成的二维表格。,(2),表中一行称为一个元组。可用来表示实体集中的一个实体。,(3),表中的列称为属性,表中的属性名不能相同。,(4),列的取值范围称为域,同列具有相同的域,不同的列可有相同的域,(5),表

8、中任意两行(元组)不能相同。能惟一标识表中不同行的属性或属性组称为主键。,4.1.1,关系的形式化定义,(7),3,)关键码和表之间的联系,在关系数据库中,关键码(简称键)是关系模型的一个重要概念。通常键由一个或几个属性组成,通常有如下几种键:,(1),超键:,在一个关系中,能惟一标识元组的属性或属性集称为关系的超键。,(2),候选键:,如果一个属性集能唯一标识元组,且又不含有多余的属性,那么这个属性集称为关系的候选键。,(3),主键:,若一个关系中有多个候选键,则选其中的一个为关系的主键。用主键实现关系定义中“表中任意两行(元组)不能相同”的约束。包含在任何一个候选键中的属性称为主属性,不包

9、含在任何键中的属性称为非主属性或非键属性。,4.1.1,关系的形式化定义,(8),职工编号,姓名,部门,性别,年龄,身份证号码,2113,程晓清,销售部,男,30,310110720306405,2116,刘红英,财务部,女,32,310110700508506,2136,李小刚,管理部,男,28,310110740609507,2138,蒋民,采购部,男,41,310110610808406,2141,王国洋,销售部,男,39,310110630909407,表,4.1,职工表(实体集),例如:表,4.1,的关系中,设属性集,K=,(,职工编号,部门),虽然,K,能惟一标识职工,但,K,只能

10、是关系的超键,还不能作候选键使用。因为,K,中“部门”是一个多余属性,只有“职工编号”能惟一标识职工。因而“职工编号”是一个候选键。,还有“身份证号”也可以是一个候选键。,另外,如果规定“不允许有同名同姓的职工”,那么“姓名”也可以是一个候选键。,关系的候选键可以有多个,但不能同时使用,只能使用一个,譬如使用“职工编号”来标识职工,那么“职工编号”就是主键了。,4.1.1,关系的形式化定义,(9),(4),外键:,若一个关系,R,中包含有另一个关系,S,的主键所对应的属性集,F,则称,F,为,R,的外键。并称关系,S,为参照关系,关系,R,为依赖关系。,例如,职工关系和部门关系分别为:,职工(

11、职工编号,,姓名,,部门编号,,性别,年龄,身份证号码),部门(,部门编号,,部门名称,部门经理),职工关系的主键为职工编号,部门关系的主键为部门编号,在职工关系中,部门编号是它的外键。,4.1.2,关系模式、关系子模式和存储模式,关系模型基本上遵循数据库的三级体系结构。在关系模型中,概念模式是关系模式的集合,外模式是关系子模式的集合,内模式是存储模式的集合。,1,)关系模式,关系模式是对关系的描述,它包括模式名,组成该关系的诸属性名、值域名和模式的主键。具体的关系称为实例。,一般形式是,R(A,1,A,2,,,A,n,),,,其中,R,是关系名,A,1,A,2,,,A,n,是该关系的属性名

12、例如关系模式,T_C(T,C),。,4.1.2,关系模式、关系子模式和存储模式,学生关系模式,S(,SNO,SNAME,,,AGE,SEX,DNAME),课程关系模式,C,(,CNO,CNAME,,,DNAME,TNAME,),选课关系模式,SC(,SNO,CNO,SCORE),图,4.1,表示的实体联系图,(ER,图,),转换成关系模式集如下:,学生,课程,选课,学号,姓名,性别,年龄,成绩,所在系,课程号,课程名,所在系,教师,m,n,例如,图,4.1,是一个教学模型的实体联系图。,4.1.2,关系模式、关系子模式和存储模式,学生关系,S,SNO,SNAME,AGE,SEX,DNAME

13、S1,程宏,19,男,计算机,S3,刘莎莎,18,女,电子,S4,李刚,20,男,自动化,S6,蒋天峰,19,男,电气,S9,王敏,20,女,计算机,CNO,CNAME,DNAME,TNAME,C1,计算机基础,计算机,孙立,C2,C,语言,计算机,胡恒,C3,电子学,电子,钱敏,C4,数据结构,计算机,丁伟,课程关系,C,关系模式是用数据定义语言,(DDL),定义的。关系模式的定义包括:模式名、属性名、值域名以及模式的主键。由于不涉及到物理存储方面的描述,因此关系模式仅仅是对数据本身的特征的描述。,SNO,CNO,SCORE,S3,C3,87,S4,C3,79,S1,C2,88,S9,C4

14、83,S1,C3,76,S6,C3,68,S1,C1,78,S6,C1,88,S3,C2,64,S1,C4,86,S9,C2,78,选课关系,SC,SNO,SNAME,AGE,SEX,DNAME,S1,程宏,19,男,计算机,S3,刘莎莎,18,女,电子,SNO,CNO,SCORE,S3,C3,87,S1,C2,88,SC,S,G,4.1.2,关系模式、关系子模式和存储模式,SNO,SNAME,CNO,SCORE,S1,程宏,C2,88,S3,刘莎莎,C3,87,2,)关系子模式,有时,用户使用的数据不直接来自关系模式中的数据,而是从若干关系模式中抽取满足一定条件的数据。这种结构可用关系子模

15、式实现。,关系子模式是用户所需数据的结构的描述,其中包括这些数据来自哪些模式和应满足哪些条件。,例如:用户需要用到成绩子模式,G(SNO,SNAME,CNO,SCORE),。,子模式,G,对应的数据来源于表,S,和表,SC,构造时应满足它们的,SNO,值相等。子模式,G,的构造过程如图所示。,3,)存储模式,存储模式描述了关系是如何在物理存储设备上存储的。关系存储时的基本组织方式是文件。由于关系模式有键,因此存储一个关系可以用散列方法或索引方法实现。如果关系中元组数目较少(,100,以内),那么也可以用堆文件方式实现此外,还可以对任意的属性集建立辅助索引。,4.1.2,关系模式、关系子模式和存

16、储模式,SCORE,4.1.3,关系模型的完整性规则,(1),关系模型的完整性规则是对数据的约束。关系模型提供了三类完整性规则,实体完整性规则、参照完整性规则、用户定义的完整性规则。其中实体完整性规则和参照完整性规则是关系模型必须满足的完整性的约束条件,称为关系完整性规则。,1,)实体完整性规则,实体完整性规则:关系中元组的主键值不能为空。,2,)参照完整性规则,在关系数据库中,关系与关系之间的联系是通过公共属性实现的。这个公共属性是一个表的主键和另一个表的外键。外键必须是另一个表的主键的有效值,或者是一个“空值”。,4.1.3,关系模型的完整性规则,(2),导师编号,导师姓名,性别,职称,3

17、01,程星,女,教授,308,刘成柄,男,副教授,316,吴海英,女,副教授,学号,学生姓名,性别,研究方向,导师编号,98104,程明,男,计算机,308,98106,刘英,女,电子,316,98107,韩伟海,男,自动化,98110,刘刚,男,计算机,318,导师,研究生,导师编号不允许,是重复值和空值,允许为空值,这是一个错误值,(,引用了不存在的编码,318),例如,图,4.4,所示研究生表的主键是学号,不包含空的数据项;导师表的主键是导师编号,也不包含空的数据项,所以,这两个表都满足实体完整性规则。,而学号为“,98110”,的研究生的导师编号为“,318”,,由于导师表中不存在导师

18、编号“,318”,,所以这个值是非法的,违反了参照完整性规则。,4.1.3,关系模型的完整性规则,(3),3,)用户定义的完整性规则,这是针对某一具体数据的约束条件,由应用环境决定。它反映某一具体应用所涉及的数据必须满足的语义要求。系统应提供定义和检验这类完整性的机制,以便用统一的系统方法处理它们,不再由应用程序承担这项工作。,例如学生成绩应该大于或等于零,职工的工龄应小于年龄,等等。,4.1.4,关系数据库模式,(1),一个关系数据库是多个关系的集合,这些具体关系构成了关系数据库的实例。由于每个关系都有一个模式,所以,构成该关系数据库的所有关系模式的集合构成了关系数据库模式。,例如,一个学生

19、选课数据库系统的模式有下面三个关系模式构成:,S(SNO,,,SNAME,,,SEX,,,AGE,,,DNAME),C(CNO,,,CNAME,,,PRE_CNO),SC(SNO,,,CNO,,,SCORE,),4.1.4,关系数据库模式,(2),关系数据库管理系统一般向用户提供四种基本数据操纵功能:,(1),数据检索,数据检索是指按照用户指定的条件查询一个关系内的数据或多个关系间的数据。,(2),数据插入,在关系内插入一些新的元组。,(3),数据删除,在关系内删除一些元组。,(4),数据修改,该操作实际上可分解为两个更基本的操作:先删除要修改的元组,再将修改后的元组插入。,4.1.4,关系数

20、据库模式,(3),上述四类数据操作的对象都是关系,这样,对关系模型的数据操纵可描述为:,(,1,)操纵对象是关系。,(,2,)基本操纵方式有五种:,属性指定,指定一个关系内的某些属性,确定二维表中的列。主要用于检索或定位。,元组选择,用一个逻辑表达式给出一个关系中满足此条件的那些元组,确定二维表中的行。主要用于检索或定位。,关系合并,将两个关系合并成一个关系。用以合并多张表,从而实现多张表间的检索和定位。,元组插入。在一个关系中添加一些元组,用以完成数据插入或修改。,元组删除。先确定所要删除的元组,然后将它(们)删除。用于数据删除或修改。,4.2,关系代数,4.2.1,关系代数的五个基本操作,

21、4.2.2,关系代数的组合操作,4.2.3,关系代数表达式应用举例,4.2.1,关系代数的五个基本操作,关系代数操作集,是个完备的操作集,任何其他关系代数操作都可以用这五种操作来表示。,商品编号,品名,数量,2008230,冰箱,19,2008234,彩电,50,2007156,空调,20,(a,),库存关系,R,设关系,R,和,S,具有相同结构的关系模式,,R,和,S,的并是由属于,R,或属于,S,的元组构成的集合,记为,RS,。,形式定义如下:,RSt|tR tS,,,t,是元组变量,,R,和,S,的元数相同。,例如:有库存和进货两个表(见下表),要将两个表合并为一个表,可利用并运算来实现

22、商品编号,品名,数量,2008214,电熨斗,30,2008310,微波炉,18,(,b,),进货关系,S,商品编号,品名,数量,2008230,冰箱,19,2008234,彩电,50,2007156,空调,20,2008214,电熨斗,30,2008310,微波炉,18,(,c,),并运算,RS,结果,1,)并(,Union,),2,)差(,Difference,),设关系,R,和,S,具有相同结构的关系模式,,R,和,S,的差是由属于,R,但不属于,S,的元组构成的集合,记为,R,S,。,形式定义如下:,R,S t|tR t,S,,,R,和,S,的元数相同。,考生号,20013211,

23、20011231,20017156,20018124,20013610,(a),成绩合格考生号,R,例如:有考生成绩合格者名单和身体不合格名单两个关系,按录取条件将成绩合格且身体健康的考生中产生录取名单关系。,(b),身体不合格考生号,S,考生号,20011231,20018124,考生号,20013211,20017156,20013610,(c),差运算,R,S,结果,事例,表,4.6,(,a,),WORKER(,职工,),E,NAME,SALARY,AGE,DEPT,123,张国华,1800,25,1,462,李明,2500,31,1,263,刘英明,2100,30,2,068,王飞,2

24、700,45,2,表,4.6,(,b,),MANAGER,(,经理),E,NAME,SALARY,AGE,DEPT,068,王飞,2700,45,2,059,曾富,3200,51,1,表,4.6,(,c,),WORKER,MANAGER,E,NAME,SALARY,AGE,DEPT,123,张国华,1800,25,1,462,李明,2500,31,1,263,刘英明,2100,30,2,068,王飞,2700,45,2,059,曾富,3200,51,1,表,4.6,(,d,),WORKER-,MANAGER,E,NAME,SALARY,AGE,DEPT,123,张国华,1800,25,1,46

25、2,李明,2500,31,1,263,刘英明,2100,30,2,表,4.8 MANAGER DEPTINFO,E#,NAME,SALARY,AGE,M.DEPT,D.DEPT,DNAME,DTASK,068,王飞,2700,45,2,1,技术部,产品设计,068,王飞,2700,45,2,2,市场部,产品销售,059,曾富,3200,51,1,1,技术部,产品设计,059,曾富,3200,51,1,2,市场部,产品销售,3,)笛卡儿积,(Cartesian Product),表,4.7 DEPTINFO,(,部门信息),DEPT,DNAME,DTASK,1,技术部,产品设计,2,市场部,产品

26、销售,表,4.6,(,b,),MANAGER,(,经理),E,NAME,SALARY,AGE,DEPT,068,王飞,2700,45,2,059,曾富,3200,51,1,例,4.3:,假定部门信息存放在表,DEPTINFO,中(见表,4-6,),则表,MANAGER,与表,DEPTINFO,的笛卡儿积如表,4.7,所示。,笛卡儿积定义,设有关系,R,和,S,,,它们分别是,n,目和,m,目关系(即它们的属性个数分别为,n,和,m,),,分别有,p,和,q,个元组。则关系,R,S,经笛卡儿积运算的结果,T,是一个,n,m,目关系,共有,pq,个元组,这些元组是由,R,与,S,的元组组合而成的。

27、关系,R,与,S,的笛卡儿积记为,RS,,,形式定义如下:,4,)选择运算,(Selection),这个操作是根据某些条件对关系做水平分割,即在一个关系内选择符合条件的元组称为选择运算。选择运算可表示为:,C,(R)ttRCt=True,C,表示逻辑条件表达式。这个表达式按以下规则组成:,,,其中,、,是属性名或常量,但,、,不能同为常量。,是比较运算符,它可以是、或。称,为基本逻辑条件。,由若干基本逻辑条件经过逻辑运算(与)、(或)、,(非)构成复合逻辑条件。,选择运算事例,表,4,.,6,(,a,),WORKER(,职工,),E,NAME,SALARY,AGE,DEPT,123,张国华,

28、1800,25,1,462,李明,2500,31,1,263,刘英明,2100,30,2,068,王飞,2700,45,2,表,4.9,E,NAME,SALARY,AGE,DEPT,462,李明,2500,31,1,对表,WORKER,执行下列选择运算:,5,),投影,(Project),这个操作是对一个关系进行垂直分割,即对一个关系内属性的指定称为投影运算。,设关系,R,有,n,个属性:,A,1,A,2,,,,,A,n,,,则对,R,上属性,A,i1,i2,,,A,im,(,A,ij,A,1,A,2,,,,,A,n,投影的结果记为:,对例,4-2,中的表,WORKER,执行下列投影运算:,N

29、AME,AGE,(,WORKER,)、,DEPT,(WORKER),其结果如表所示。,投影运算事例,表,4.6,(,a,),WORKER(,职工,),E,NAME,SALARY,AGE,DEPT,123,张国华,1800,25,1,462,李明,2500,31,1,263,刘英明,2100,30,2,068,王飞,2700,45,2,表,4.10,NAME,AGE,(,WORKER,),NAME,AGE,张国华,25,李明,31,刘英明,30,王飞,45,表,4.11,DEPT,(,WORKER,),DEPT,1,2,c,关系代数操作的结果,(,b,),RS,(,c,),R,S,(,d,),R

30、S,(,e,),C,,,A,(,R,)(,f,),B=b,(,R,),事例,关系,R,关系,S,图,(a),两个关系,f,c,4.2.2,关系代数的组合操作,1,)交(,intersection,),设关系,R,和,S,具有相同的元数,n,,,相应的属性取自同一个域,则关系,R,和,S,的交记为,RS,,,由既属于,R,又属于,S,的元组组成,其结果仍然一个,n,元关系。形式定义如下:,RS,t,tRtS,t,是元组变量。,关系的交可以由关系的差来表示,即:,RS,R,(,R,S,)或,RS,S,(,S,R,),例如:以上例中的,WORKER,和,MANAGER,为例,其交运算,WORKERM

31、ANAGER,的结果表,4-5,(,E,),所示。可以其按差运算,WORKER,(,WORKER,MANAGER,),来计算,其结果分别如表,4-5,(,E1,)、,表,4-5,(,E2,),所示。,交,操作事例,表,4.13,(,a,),WORKER(,职工,),E,NAME,SALARY,AGE,DEPT,123,张国华,1800,25,1,462,李明,2500,31,1,263,刘英明,2100,30,2,068,王飞,2700,45,2,表,4.13,(,b,),MANAGER,(,经理),E,NAME,SALARY,AGE,DEPT,068,王飞,2700,45,2,059,曾富,

32、3200,51,1,表,4.13,(,E,),WORKER,MANAGER,E,NAME,SALARY,AGE,DEPT,068,王飞,2700,45,2,E,NAME,SALARY,AGE,DEPT,123,张国华,1800,25,1,462,李明,2500,31,1,263,刘英明,2100,30,2,表,4.13,(,E1,),WORKER,-,MANAGER,E,NAME,SALARY,AGE,DEPT,068,王飞,2700,45,2,表,4.13,(,E2,),WORKER-(WORKER-,MANAGER),2,)连接,(Join),运算,就是说,连接操作是笛卡儿积和选择操作的组

33、合。,(,1,)条件连接,条件连接运算又可称,-,连接,这是一个二目运算,通过它将两个关系合并成一个关系。设有关系,S,和,n,目关系,R,以及比较表达式,ij,其中,i,是,R,中的属性,j,是,S,的属性,含义同前(比较运算符)。形式定义如下:,【,例,4.8】,设关系,EMP,表,4.14,表示职工的年龄和工龄情况,关系,ELIT,表,4.15,表示一个职工工作年限和可以享受的福利级别。使用下列,连接:,连接运算事例,表,4.14,关系,EMP,NAME,AGE,YEARS,李亚当,26,2,王明,30,3,赵亮,34,9,陈宾,43,18,表,4.15,关系,ELIT,YEARS,LE

34、VEL,1,A,3,B,5,C,10,D,表,4.16,每个职工享有的全部福利,(,例,4.8,结果),NAME,AGE,EMP.YEARS,ELIT.YEARS,LEVEL,李亚当,26,2,1,A,王明,30,3,1,A,王明,30,3,3,B,赵亮,34,9,1,A,赵亮,34,9,3,B,赵亮,34,9,5,C,陈宾,43,18,1,A,陈宾,43,18,3,B,陈宾,43,18,5,C,陈宾,43,18,10,D,EMP,ELIT,NAME,AGE,EMP.YEARS,ELIT.YEARS,LEVEL,李亚当,26,2,1,A,李亚当,26,2,3,B,李亚当,26,2,5,C,李亚

35、当,26,2,10,D,王明,30,3,1,A,王明,30,3,3,B,王明,30,3,5,C,王明,30,3,10,D,赵亮,34,9,1,A,赵亮,34,9,3,B,赵亮,34,9,5,C,赵亮,34,9,10,D,陈宾,43,18,1,A,陈宾,43,18,3,B,陈宾,43,18,5,C,陈宾,43,18,10,D,(,2,)自然连接,(Natural Join),R,S最常用的是,-,连接的一种特例,,可以定义为:,R,S,R,S,计算的具体过程为,:,计算,RS,;,设,R,和,S,的公共属性是,B,1,B,2,B,n,,,挑选,RS,中满足,R.B,1,S.B,1,R.B,n,S

36、B,n,的那些元组;,去掉,S.B,1,S.B,n,这些列(保留,R.B,1,R.B,n,)。,【,例,4.9】,查询各部门经理及他们所在部门的信息。该查询可用一个自然连接运算实现:,MANAGER,DEPTINFO,,,其查询结果如表所示。,自然连接事例,表,4.17 MANAGER,DEPTINFO,E#,NAME,SALARY,AGE,M.DEPT,D.DEPT,DNAME,DTASK,068,王飞,2700,45,2,1,技术部,产品设计,068,王飞,2700,45,2,2,市场部,产品销售,059,曾富,3200,51,1,1,技术部,产品设计,059,曾富,3200,51,1,

37、2,市场部,产品销售,表,4.7 DEPTINFO,(,部门信息),DEPT,DNAME,DTASK,1,技术部,产品设计,2,市场部,产品销售,表,4.6,(,b,),MANAGER,(,经理),E,NAME,SALARY,AGE,DEPT,068,王飞,2700,45,2,059,曾富,3200,51,1,表,4.18 MANAGER,DEPTINFO,E#,NAME,SALARY,AGE,DEPT,DNAME,DTASK,068,王飞,2700,45,2,市场部,产品销售,059,曾富,3200,51,1,技术部,产品设计,(,3,)半连接,(,SemiJoin,),两个关系R和S的半连

38、接运算定义为:,表,4.14,关系,EMP,NAME,AGE,YEARS,李亚当,26,2,王明,30,3,赵亮,34,9,陈宾,43,18,表,4.15,关系,ELIT,YEARS,LEVEL,1,A,3,B,5,C,10,D,表,4.19,NAME,AGE,YEARS,王明,30,3,3,)除法运算,(Division,),有关系,R,和,S,,,R,能被,S,除的条件有两个:,一是,R,中的属性包含,S,中的属性;,二是,R,中的有些属性不出现在,S,中。,R,除以,S,表示为,R/S,或,RS,。,RS,是,由,R,中那些不出现在,S,中的属性组成,其元组则是,S,中所有元组在,R,中

39、对应值相同的那些元组值。,表,4.20,SC,S,C,S1,C1,S1,C2,S2,C1,S2,C2,S2,C3,S3,C2,表,4.21,C,C,C1,C2,C3,表,4.22,SC,C,S,S2,除法运算计算过程,设有关系,R,和,S,的元数分别为,r,和,s,,,则,RS,是一个,(r-s),元的元组集合,其计算过程如下:,(,a,),T,1,2,r-s,(,R,),(,b,),W,(,TS,),R,(,c,),V,1,2,r-s,(,W,),(,d,),RS,T,V,即,RS,1,2,r-s,(,R,),1,2,r-s,(,TS,),R,),除法运算不是基本运算,它可由其他基本运算推出

40、除法运算计算事例(,SC,C,),(a),T,1,2,r-s,(SC),S,S1,S2,S3,(TC),S,C#,S1,C1,S1,C2,S1,C3,S2,C1,S2,C2,S2,C3,S3,C1,S3,C2,S3,C3,SC,S,C,S1,C1,S1,C2,S2,C1,S2,C2,S2,C3,S3,C2,(b)W(TC)SC,S,C#,S1,C3,S3,C1,S3,C3,(c)V,1,2,r-s,(W),S,S1,S3,(d)RS,TV,S,S2,表,4.20,SC,S,C,S1,C1,S1,C2,S2,C1,S2,C2,S2,C3,S3,C2,表,4.21,C,C,C1,C2,C3,4

41、2.3,关系代数表达式应用举例,关于教学数据库的关系模式如下:,S,(,SNO,,,SNAME,,,AGE,,,SEX,,,DNAME,),C,(,CNO,,,CNAME,,,PRE_CNO,,,TEACHER,),SC,(,SNO,,,CNO,,,SCORE,),(,1,),检索,“,陈军,”,老师所授课程的课程号(,CNO,),和课程名(,CNAME,),CNO,SNAME,(,TEACHER=,陈军,(,C,),(,2,),检索年龄大于,21,的男学生学号(,SNO,),和姓名(,SNAME,),SNO,SNAME,(,AGE21,SEX=,男,(,S,),(,3,),检索至少选修,“

42、陈军,”,老师所授全部课程的学生姓名(,SNAME,),SNAME,(,S,(,SNO,CNO,(,SC,),CNO,(,TEACHER=,陈军,(,C,),SNO,CNO,(,SC,),CNO,(,CNO=k1,CNO=k5,(,C,),应用举例,(,4,),检索,“,李强,”,同学不学课程的课程号(,CNO,),CNO,(,C,),CNO,(,SNAME=,李强,(,S,),SC,),(,5,),检索至少选修两门课程的学生学号(,SNO,),SNO,(,1=4,2,5,(,SC,SC,),(,6,),检索全部学生都选修的课程的课程号(,CNO,),和课程名(,CNAME,),CNO,CN

43、AME,(,C,(,SNO,CNO,(,SC,),SNO,(,S,),(,7,),检索选修课程包含,“,陈军,”,老师所授课程之一的学生学号(,SNO,),SNO,(,SC,CNO,(,TEACHER=,陈军,(,C,),(,8,),检索选修课程号为,k1,和,k5,的学生学号(,SNO,),(,9,),检索选修全部课程的学生姓名(,SNAME,),SNAME,(,S,(,SNO,CNO,(,SC,),CNO,(,C,),应用举例,(,10,),检索选修课程包含学号为,S2,的学生所修课程的学生学号(,SNO,),SNO,CNO,(,SC,),CNO,(,SNO=S2,(,SC,),(,11,

44、检索选修课程名为,“,C,语言,”,的学生学号(,SNO,),和姓名(,SNAME,),SNO,SNAME,(,S,(,SNO,(,SC,(,CNAME=C,语言,(,C,),(,12,),从关系,SC,中删除课程号为,“,C2,”,的课程成绩,DELETETUPLE,CNO=C2,(,SC,),SC,SC,DELETETUPLE,(,13,),将元组,C6,,,数据库原理及应用,,C4,,,胡拓插入课程关系,C,中,NEWTUPLE,C6,,,数据库原理及应用,,C4,,,胡拓,C=C,NEWTUPLE,4.3,关系演算,把数理逻辑的谓词演算引入到关系运算中,就可得到以关系演算为基础的运

45、算。,关系演算又可分为元组关系演算和域关系演算,前者以元组为变量,后者以属性(域)为变量。,4.3.1,元组关系演算,4.3.2,域关系演算,4.3.1,元组关系演算,在元组关系演算(,Tuple,Relational Calculus,),中,元组关系演算表达式简称为元组表达式,其一般形式为,:,t|P,(,t,),其中,,t,是元组变量,表示一个元数固定的元组;,P,是公式,在数理逻辑中也称为谓词,也就是计算机语言中的条件表达式。,t|P,(,t,),表示满足公式,P,的所有元组,t,的集合。,设,r,目关系,R,和,s,目关系,S,的谓词分别为,R(u),和,S(v),,,用它们表示并、

46、差、选择、投影和笛卡儿积如下:,1,)并:,RS,t,R,(,t,),S,(,t,),2,),差:,R,S,t,R,(,t,),S,(,t,),3,),选择:,F,(R),t,R,(,t,),F,其中,F,是条件表达式,F,在谓词演算中的表示形式。,4,)投影:,5,),笛卡儿积,:,下面首先介绍关系演算的原子公式定义,然后介绍关系演算公式定义。,定义,4.3:,关系演算的原子公式(简称原子公式)定义如下:,(1),原子谓词,R(u),是原子公式,其中,u,为元组。,(2)uivj,是原子公式,其中,u,和,v,为元组,是比较运算符。,(3)uia,是原子公式,其中,a,是常量。,(4),原子

47、公式仅有上面三种定义方式。,定义,4.4,:关系演算公式(简称公式)递归定义如下:,(1),每个原子公式都是一个公式。,(2),如果,1,、,2,是公式,则,1,2,、,1,2,、,1,也都是公式。,(3),如果,是公式,,中有元组变量,t,,,则,(,t)(,),、,(,t),(,),均为公式。,(4),公式仅由上面三种定义方式。,在公式中运算符的优先次序为:,比较运算符最高,量词,、,次之,,否定符,再次之,最后是,(与或)运算。,加括号时,括号中运算优先。,元组关系演算表达查询,事例,设有关系模式,S(S#,SN,SEX,SA,SD),例,4.11,:列出计算机科学系,CS,的所有学生:

48、例,4.12,:列出所有年龄大于或等于,20,的学生:,例,4.13,:求学生姓名及所在的系:,例,4.14,:设有关系模式,R(A,B,C),和,S(B,E),,,用元组关系演算表示连接运算如下,:,元组关系演算事例,例,:,下图的,(,a,)、(,b,),是关系,R,和,S,,(,c,)(,g,),分别是下面五个元组表达式的值,元组关系演算的例子,R1=t|S(t)t12,R2=t|R(t)S(t),R3=t|(,u)(S(t)R(u)t3u1),R5=t|(,u)(,v)(R(u)S(v),t1=u2t2=v3,t3=u1u1v2),4.3.2,域关系演算,域演算的运算符基本上与元组关

49、系演算相同,主要区别是公式中的变元不再是元组而是元组分量的域,简称域变量。,域演算表达式的形式是:,X,1,,,X,2,,,,,X,k,(,X,1,,,X,2,,,,,X,k,),原子公式有三类:,(1)R,(,X,1,,,X,2,,,,,X,k,),R,是,K,元关系,,X,i,是域变量或常量。,R,(,X,1,,,X,2,,,,,X,k,),表示由分量,X,1,,,X,2,,,,,X,k,组成的元组属于,R,。,(2)XY,,,X,、,Y,是域变量,是算术比较符,,XY,表示,X,与,Y,满足比较关系,。,(3)Xc,或,cX,这里,c,为常数,表示域变量,x,与常数,c,之间满足比较关系

50、A,B,C,A,B,C,D,E,A,B,C,A,B,C,B,D,A,1,2,3,1,2,3,7,5,4,5,6,1,2,3,5,7,4,4,5,6,3,4,6,4,8,4,5,6,8,7,7,7,8,9,5,6,9,7,8,9,8,4,7,3,4,6,域关系演算,事例,例:下图(,a,)、(,b,)、(,c,),是三个关系,R,、,S,、,W,,(,d,)、(,e,)、(,f,),分别表示下面三个域表达式的值。,(,a,),关系,R,(,b,),关系,S,(,c,),关系,W,(,d,),R1,(,e,),R2,(,f,),R3,域关系演算的例子,R1=xyz|R,(,xyz,),x3,

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服