欢迎来到天天文库
浏览记录
ID:40107972
大小:3.70 MB
页数:90页
时间:2019-07-21
《关系数据库方法》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第4章关系数据库方法本章主要内容本章将主要介绍关系数据库的基本概念,关系运算和关系表达式的优化问题,其中关系运算和关系表达式的优化问题是本课程的重点内容之一。关系运算是关系数据模型的理论基础。关系数据库方法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.关系的集合表示一个关系由若干个不同元组组成。一个关系可以看成是元组的集合。关系中每个属性都有其相应的取值范围,即域4.1.1关系的
2、形式化定义给定一组域D1,D2,……,Dn则其笛卡尔积D1×D2×……×Dn={(d1,d2,……,dn)|di∈Di,i=1,2,…,n}每个元素(d1,d2,…,dn)称为一个元组。若Di(i=1,2,…,n)为有限集,其基数为mi(i=1,2,…,n),则D1×D2×…×Dn的基数为:4.1.1关系的形式化定义【例4-1】设有两个域:教师名域T={胡恒,丁伟}、课程名域C={C语言,数据结构,计算机原理},T和C的笛卡儿积定义为集合:T×C={(胡恒,C语言),(胡恒,数据结构),(胡恒,计算机原理),(丁伟,C语言),(丁伟,数据结构),(丁伟,计算机原理)}该笛卡儿积的基数为
3、2×3=6,也就是说,T×C一共2×3=6个元组.4.1.1关系的形式化定义如果取该笛卡儿积的这六个元素,并将它们放到一张名为T_C的二维表中就构成一个关系。例,给出三个域:D1=导师={张清玫,刘逸}D2=专业={计算机专业,信息专业}D3=研究生={李勇,刘晨,王敏}4.1.1关系的形式化定义则D1,D2,D3的笛卡尔积为:D1×D2×D3={(张清玫,计算机专业,李勇),(张清玫,计算机专业,刘晨),(张清玫,计算机专业,王敏),(张清玫,信息专业,李勇),(张清玫,信息专业,刘晨),(张清玫,信息专业,王敏),(刘逸,计算机专业,李勇),(刘逸,计算机专业,刘晨),(刘逸,计算
4、机专业,王敏),(刘逸,信息专业,李勇),(刘逸,信息专业,刘晨),(刘逸,信息专业,王敏)}4.1.1关系的形式化定义在上述笛卡尔积中取出有实际意义的元组来构造关系。关系:SAP(SUPERVISOR,SPECIALITY,POSTGRADUATE)如,SAP关系可以包含三个元组:{(张清玫,信息专业,李勇),(张清玫,信息专业,刘晨),(刘逸,信息专业,王敏)}4.1.1关系的形式化定义定义4-1:一个在域D1,D2,…,Dn上的关系就是笛卡儿积D1×D2×…×Dn的子集,用R(D1,D2,…,Dn)表示,关系的成员为元组,即笛卡儿积的子集的元素(d1,d2,…,dn)。当n=1时
5、,称关系为单元关系当n=2时,称关系为二元关系4.1.1关系的形式化定义2.关键码和表之间的联系在关系数据库中,通常有如下几种键:(1)超键在一个关系中,能惟一标识元组但含有多余属性的属性组合,称为关系的超键。(2)候选键如果一个属性组能唯一标识元组,且又不含有多余的属性,那么这个属性组称为关系的候选键。(3)主键若一个关系中有多个候选键,则选其中的一个为关系的主键。4.1.1关系的形式化定义用主键实现关系定义中:表中任意两行(元组)不能相同的约束。主键中任何属性的取值不能为空,主键的值不能重复。包含在任何一个候选键中的属性称为主属性,不包含在任何键中的属性称为非主属性或非键属性。4.
6、1.1关系的形式化定义(8)职工编号姓名部门性别年龄身份证号码2113程晓清销售部男303101107203064052116刘红英财务部女323101107005085062136李小刚管理部男283101107406095072138蒋民采购部男413101106108084062141王国洋销售部男39310110630909407表4.2职工表在上表中,“职工编号”、“身份证号”可以作候选键。关系的候选键可以有多个,但不能同时使用,只能使用一个,譬如使用“职工编号”来标识职工,那么“职工编号”就是主键了。4.1.1关系的形式化定义(4)外键若一个关系R中包含有另一个关系S的主键
7、所对应的属性集F,则称F为R的外键。并称关系S为被参照关系或目标关系,关系R为依赖关系或参照关系。例如,职工关系和部门关系分别为:职工(职工编号,姓名,部门编号,性别,年龄,身份证号码)部门(部门编号,部门名称,部门经理)职工关系的主键为职工编号,部门关系的主键为部门编号,在职工关系中,部门编号是它的外键。4.1.1关系的形式化定义4.1.1关系的形式化定义3.关系的一阶谓词表示关系模型不但可以用关系代数表示,还可以用一阶谓词演算表示。定义4-
此文档下载收益归作者所有