关系数据库系统课件.ppt

上传人(卖家):ziliao2023 文档编号:5686386 上传时间:2023-05-03 格式:PPT 页数:29 大小:838KB
下载 相关 举报
关系数据库系统课件.ppt_第1页
第1页 / 共29页
关系数据库系统课件.ppt_第2页
第2页 / 共29页
关系数据库系统课件.ppt_第3页
第3页 / 共29页
关系数据库系统课件.ppt_第4页
第4页 / 共29页
关系数据库系统课件.ppt_第5页
第5页 / 共29页
点击查看更多>>
资源描述

1、1第第2章章 关系数据库系统关系数据库系统精122第第2章章 关系数据库系统关系数据库系统n 2.1 2.1 关系模型的基本概念关系模型的基本概念n 2.2 2.2 关系代数关系代数n 2.3 2.3 关系规范化关系规范化精232.1 关系模型的基本概念关系模型的基本概念n 关系模型的基本术语关系模型的基本术语 部门号部门号部门名部门名部门经理部门经理电话号码电话号码101技术部技术部林克林克26540214102财务部财务部徐莹华徐莹华26540652103公关部公关部张文韬张文韬26544852104策划部策划部谢海谢海26543298职工号职工号职工名职工名性别性别年龄年龄部门号部门号1

2、01001王军王军男男24101101003黄明业黄明业男男34101103018张华张华女女35103104024吴林华吴林华女女27104表表2.1 职工信息表职工信息表表表2.2 部门信息表部门信息表精342.1 关系模型的基本概念关系模型的基本概念1关系关系一个关系就是一张二维表,通常将一个没有重复行、重一个关系就是一张二维表,通常将一个没有重复行、重复列的二维表看成一个关系,每个关系都有一个关系名。复列的二维表看成一个关系,每个关系都有一个关系名。2.属性及值域属性及值域二维表的每一列在关系中称为属性二维表的每一列在关系中称为属性(Attribute),每个属性,每个属性都有一个属性

3、名,各个属性的取值称为属性值。每个属性有都有一个属性名,各个属性的取值称为属性值。每个属性有一定的取值范围,称为值域。一定的取值范围,称为值域。3.关系模式关系模式对关系的描述称为关系模式,关系模式的一般形式为:对关系的描述称为关系模式,关系模式的一般形式为:关系名关系名(属性属性1,属性,属性2,属性,属性n)例如,职工信息关系例如,职工信息关系(职工号,职工名,性别,年龄,职工号,职工名,性别,年龄,部门号部门号)精452.1 关系模型的基本概念关系模型的基本概念4元组元组二维表的每一行在关系中称为元组二维表的每一行在关系中称为元组(Tuple)。一行描述了。一行描述了现实世界中的一个实体

4、,或者描述了不同实体间的一种联系。现实世界中的一个实体,或者描述了不同实体间的一种联系。5.键键(1)超键:在关系中能唯一标识元组的属性或属性的组超键:在关系中能唯一标识元组的属性或属性的组合称为该关系的超键。合称为该关系的超键。(2)候选键:不含有多余属性的超键称为候选键。)候选键:不含有多余属性的超键称为候选键。(3)主键:用户选作元组标识的一个候选键称为主键。)主键:用户选作元组标识的一个候选键称为主键。例如,表例如,表2.1的职工信息关系中,属性组合的职工信息关系中,属性组合(职工号,职工职工号,职工名名)是超键,但不是候选键是超键,但不是候选键。精562.1 关系模型的基本概念关系模

5、型的基本概念6.主属性与非主属性主属性与非主属性关系中包含在任何一个候选键中的属性称为主属性,不关系中包含在任何一个候选键中的属性称为主属性,不包含在任何一个候选键中的属性称为非主属性。包含在任何一个候选键中的属性称为非主属性。例如,表例如,表2.1职工关系中,职工号和职工名是主属性,其职工关系中,职工号和职工名是主属性,其他属性是非主属性。他属性是非主属性。7.外键、参照关系与依赖关系外键、参照关系与依赖关系如果关系中某个属性或属性组合并非关键字,但却是另如果关系中某个属性或属性组合并非关键字,但却是另一个关系的主关键字,则称此属性或属性组合为本关系的外一个关系的主关键字,则称此属性或属性组

6、合为本关系的外部关键字或外键部关键字或外键(Foreign Key)。在关系数据库中,用外部关键字表示两个表间的联系。在关系数据库中,用外部关键字表示两个表间的联系。以外键作为主键的关系称为参照关系或主关系,外键所在的以外键作为主键的关系称为参照关系或主关系,外键所在的关系称为依赖关系或从关系。关系称为依赖关系或从关系。精672.1 关系模型的基本概念关系模型的基本概念n 关系的定义和性质关系的定义和性质 在关系模型中,对关系作了下列规范性限制。在关系模型中,对关系作了下列规范性限制。(1)关系中的每一个属性值是不可分解的。)关系中的每一个属性值是不可分解的。(2)每一个关系模式中属性的数据类

7、型以及属性的个数)每一个关系模式中属性的数据类型以及属性的个数是固定的,并且每个属性必须命名,在同一个关系模式中,是固定的,并且每个属性必须命名,在同一个关系模式中,属性名必须是不同的。属性名必须是不同的。(2)每一个关系仅有一种关系模式。)每一个关系仅有一种关系模式。(4)在关系中没有行序。)在关系中没有行序。(5)在关系中没有列序。)在关系中没有列序。(6)在同一个关系中不允许出现完全相同的元组。)在同一个关系中不允许出现完全相同的元组。精782.1 关系模型的基本概念关系模型的基本概念n 关系模型的三要素关系模型的三要素1.数据结构数据结构2.关系操作关系操作(1)代数方法,也称为关系代

8、数,是以集合)代数方法,也称为关系代数,是以集合(关系是元关系是元组的集合组的集合)操作为基础,应用对关系的专门运算来表达查询操作为基础,应用对关系的专门运算来表达查询的要求。的要求。(2)逻辑方法,也称为关系演算,是以谓词演算为基础,)逻辑方法,也称为关系演算,是以谓词演算为基础,通过元组必须满足的谓词公式来表达查询要求。通过元组必须满足的谓词公式来表达查询要求。3.关系模型的三类完整性规则关系模型的三类完整性规则精892.1 关系模型的基本概念关系模型的基本概念(1)实体完整性)实体完整性所谓实体完整性,就是一个关系模型中的所有元组都是所谓实体完整性,就是一个关系模型中的所有元组都是惟一的

9、,没有两个完全相同的元组,也就是一个二维表中没惟一的,没有两个完全相同的元组,也就是一个二维表中没有两个完全相同行,也称为行完整性。有两个完全相同行,也称为行完整性。例如,表例如,表2.1的职工信息关系,根据实体完整性,的职工信息关系,根据实体完整性,“职工职工号号”不能取空值不能取空值。(2)参照完整性)参照完整性当一个数据表中有外部关键字当一个数据表中有外部关键字(即该列是另外一个表的关即该列是另外一个表的关键字键字)时,外部关键字列的所有值,都必须出现在其所对应时,外部关键字列的所有值,都必须出现在其所对应的表中,这就是参照完整性的含义的表中,这就是参照完整性的含义。例如,表例如,表2.

10、1的职工信息表和表的职工信息表和表2.2的部门信息表。的部门信息表。(3)用户定义完整性)用户定义完整性精9102.2 关系代数关系代数n 传统的集合运算传统的集合运算 对二维表格进行运算的机制。对二维表格进行运算的机制。1并并设设A、B同为同为n元关系,则元关系,则A、B的并也是一个的并也是一个n元关系,元关系,记作记作AB。2差差设设A、B同为同为n元关系,则元关系,则A、B的差也是一个的差也是一个n元关系,元关系,记作记作A-B。A-B包含了所有属于包含了所有属于A但不属于但不属于B的元组。的元组。3交交设设A、B同为同为n元关系,则元关系,则A、B的交也是一个的交也是一个n元关系,元关

11、系,记作记作AB。AB包含了所有同属于包含了所有同属于A、B的元组。的元组。精10112.2 关系代数关系代数4广义笛卡尔积广义笛卡尔积设设A1、A2、An为任意集合,为任意集合,A1、A2、An的笛的笛卡尔乘积记做:卡尔乘积记做:A1A2An,并且定义并且定义D=A1A2An=(a1,a2,an)|aiAi,i=1,2,n,其中,其中(a1,a2,an)是一个元组,它的每个元素是一个元组,它的每个元素ai取取自对应的集合自对应的集合Ai。例如,设例如,设A=1,2,B=a,b,则,则AB=(1,a),(1,b),(2,a),(2,b)。精1112 R A B C a1 b1 c1 a1 b2

12、 c2 a2 b2 c1(a)S A B C a1 b2 c2 a1 b3 c2 a2 b2 c1(b)R?S A B C a1 b1 c1 a1 b2 c2 a2 b2 c1 a1 b3 c2(c)RS A B C a1 b1 c1(d)RS A B C a1 b2 c2 a2 b2 c1(e)RS R.A R.B R.C S.A S.B S.C a1 b1 c1 a1 b2 c2 a1 b1 c1 a1 b3 c2 a1 b1 c1 a2 b2 c1 a1 b2 c2 a1 b2 c2 a1 b2 c2 a1 b3 c2 a1 b2 c2 a2 b2 c1 a2 b2 c1 a1 b2 c

13、2 a2 b2 c1 a1 b3 c2 a2 b2 c1 a2 b2 c1(f)2.2 关系代数关系代数【例【例2.1】精12132.2 关系代数关系代数n 专门的关系运算专门的关系运算1.选择选择对关系作水平分割对关系作水平分割 定义如下:定义如下:t是元组变量,是元组变量,F是元组需满足的公式。是元组需满足的公式。2.投影投影对关系作垂直分割对关系作垂直分割设关系设关系R是是k元关系,元关系,R在其分量,在其分量,(mk,i1,im为为1到到k间的整数间的整数)上的投影用上的投影用 表示,表示,它是一个它是一个m元元组的集合,定义如下元元组的集合,定义如下:(:(t是元组变量是元组变量))

14、(|)(truetFRttRF11,1(R),Rmmiiiik t|ttttt1,(R)mii精13142.2 关系代数关系代数【例【例2.2】(a)是关系是关系R,(b)表示表示 C3(R),(c)表示表示C,A(R)。R A B C 5 2 8 1 7 4 6 9 3(a)C3(R)A B C 5 2 8 1 7 4 (b)C,A(R)C A 8 5 4 1 3 6(c)精14152.2 关系代数关系代数3.连接连接连接运算的结果是笛卡尔积的子集连接运算的结果是笛卡尔积的子集(1)连接连接从关系从关系R和和S的笛卡尔积中选取属性值满足某一的笛卡尔积中选取属性值满足某一 操作的元组。操作的元

15、组。形式定义如下:形式定义如下:,|ttttttsjissjiSRttSRttsji,分别表示元组分别表示元组tr的第的第i个分量、元组个分量、元组ts的第的第j个分量个分量 ttsji表示这两个分量的表示这两个分量的 操作操作精15162.2 关系代数关系代数(2)F连接连接F连接操作是连接操作是从关系从关系R和和S的笛卡尔积中选取属性值满足的笛卡尔积中选取属性值满足某一公式某一公式F的元组的元组,记为,记为 R S。(3)自然连接)自然连接两个关系两个关系R和和S的自然连接操作用的自然连接操作用RS表示,计算过程表示,计算过程如下:如下:计算计算RS;设设R和和S的公共属性是的公共属性是A

16、1,Ak,挑选,挑选RS中满足中满足R.A1=S.A1,R.Ak=S.Ak的那些元组;的那些元组;去掉去掉S.A1,S.Ak这些列。这些列。因而因而RS定义如下:定义如下:RSF111,.()mkkiiR AS AR AS ARS精16172.2 关系代数关系代数【例【例2.3】(a)和和(b)是两个关系是两个关系R和和S,(c)表示连接,表示连接,(d)表示表示F连接,连接,(e)表示自然连接。表示自然连接。R A B C 4 3 6 4 3 7 2 9 1(a)RS A B C 4 3 6 4 3 7(e)R22 1 2 S R.A R.B R.C S.A S.B 2 9 1 4 3 2

17、9 1 2 3(d)S A B 4 3 8 1 2 3(b)精17182.2 关系代数关系代数4.除法除法设关系设关系R和和S的元数分别为的元数分别为r和和s(设设rs0),那么,那么R S是一个是一个(r-s)元的元组集合元的元组集合。(R S)是满足下列条件的最大关系:其是满足下列条件的最大关系:其中每个元组中每个元组t与与S中每个元组中每个元组u组成的新元组组成的新元组必在关系必在关系R中。中。精18192.2 关系代数关系代数【例【例2.4】(a)和和(b)是两个关系是两个关系R和和S,(c)表示除法运算。表示除法运算。R A B C D 5 7 2 8 5 7 7 4 5 1 5 7

18、 3 6 4 1 9 8 2 8 9 8 7 4(a)S C D 2 8 7 4(b)RS A B 5 7 9 8(c)精19202.2 关系代数关系代数n 关系代数表达式及其应用实例关系代数表达式及其应用实例【例【例2.5】设教学数据库中有三个关系:】设教学数据库中有三个关系:学生关系学生关系(学号学号,姓名,性别,年龄,所在系,专业,姓名,性别,年龄,所在系,专业)课程关系课程关系(课程号课程号,课程名,学时数,课程名,学时数)选课关系选课关系(学号,课程号学号,课程号,成绩,成绩)下面用关系代数表达式表达每个查询语句。下面用关系代数表达式表达每个查询语句。(1)检索课程号为)检索课程号为

19、C201的学生的学号与成绩。的学生的学号与成绩。(2)检索选修课程名为应用数学的学生的学号与姓名。)检索选修课程名为应用数学的学生的学号与姓名。选课课程名成绩学号201,C1,3(课程选课学生应用数学课程名学号,姓名精20212.2 关系代数关系代数(3)检索选修全部课程的学生姓名。)检索选修全部课程的学生姓名。过程如下:过程如下:学生选课情况表示如下:学生选课情况表示如下:全部课程表示如下:全部课程表示如下:选修了全部课程的学生学号可用除法操作表示,操选修了全部课程的学生学号可用除法操作表示,操作结果是学号集作结果是学号集,表示如下:,表示如下:从学号求学生姓名,可用自然连接和投影操作组合而

20、从学号求学生姓名,可用自然连接和投影操作组合而成:成:课程选课学生课程名学号,课程名姓名选课学号,课程号课程课程号课程选课课程号学号,课程号精21222.3 关系规范化关系规范化n 关系模式的设计问题关系模式的设计问题引例引例:表:表2.3关系模型存在如下几方面的问题。关系模型存在如下几方面的问题。数据冗余;修改异常;插入异常;删除异常数据冗余;修改异常;插入异常;删除异常 SNOSNAMESCITYCODEPNOPNAMEWEIGHTQTYS1迅飞公司上海021P102六角螺栓2.58280S2网达公司天津022P432转管45.14360S2网达公司天津022P761水暖三通34.9620

21、0S3新嘉公司北京010P432转管45.14480S4中联公司北京010P761水暖三通34.96100表表2.3 商品供应关系模式商品供应关系模式SUPPLY的实例的实例精22232.3 关系规范化关系规范化要解决上述要解决上述3个问题,可将商品供应关系模式个问题,可将商品供应关系模式SUPPLY分分解以下为四个模式:解以下为四个模式:SUPPLIER(SNO,SNAME,SCITY)CITY(SCITY,CODE)PART(PNO,PNAME,WEIGHT)S_P(SNO,PNO,QTY)精2324SNO SNAME SCITY S1 迅飞公司迅飞公司 上海上海 S2网达公司网达公司 天

22、津天津 S3 新嘉公司新嘉公司 北京北京 S4 中联公司中联公司 北京北京 SNO PNO QTY S1P102280S2P432360S2P761200S3 P432480S4 P761100SCITY SNAME 上海上海 021天津天津 022 北京北京 010PNO PNAME WEIGHT P102六角螺栓六角螺栓 2.58 P432转管转管 45.14 p761水暖三通水暖三通 34.96 关系模式关系模式SUPPLIER的实例的实例 关系模式关系模式CITY的实例的实例 关系模式关系模式PART的实例的实例 关系模式关系模式S_P的实例的实例 表表2.4 关系模式关系模式SUPP

23、LY的分解实例的分解实例精24252.3 关系规范化关系规范化n 函数依赖函数依赖 定义定义1 设设RR(A1,A2,An)是一个关系模式是一个关系模式(A1,A2,An是是R的属性的属性),X A1,A2,An,Y A1,A2,An,即,即X和和Y是是R的属性子集,的属性子集,T1、T2是是R的两个任意元组,即的两个任意元组,即T1T1(A1,A2,An),T2T2(A1,A2,An),如果当,如果当T1(X)T2(X)成立时,总有成立时,总有T1(Y)T2(Y),则称,则称X决定决定Y,或称,或称Y函数依赖于函数依赖于X。记为:。记为:XY。精25262.3 关系规范化关系规范化定义定义2

24、 R,X,Y如定义如定义1所设,如果所设,如果XY成立,但对成立,但对X的任意真子集的任意真子集X1,都有,都有X1Y不成立,称不成立,称Y完全函数依赖于完全函数依赖于X,否则,称,否则,称Y部分函数依赖于部分函数依赖于X。定义定义3 设设X,Y,Z是关系模式是关系模式R的不同属性集,若的不同属性集,若XY(并且并且YX不成立不成立),YZ,称,称X传递决定传递决定Z,或称,或称Z传传递函数依赖于递函数依赖于X。精26272.3 关系规范化关系规范化n 关系模式的范式与规范化关系模式的范式与规范化 对关系模式的规范化要求分成从低到高不同的层次,分对关系模式的规范化要求分成从低到高不同的层次,分

25、别称为第别称为第1范式、第范式、第2范式、第范式、第3范式、范式、Boyce-Codd范式、第范式、第4范式。范式。图图2.1 各种范式之间的关系各种范式之间的关系精27282.3 关系规范化关系规范化1.第第1范式范式当关系模式当关系模式R的所有属性都不能分解为更基本的数据单位的所有属性都不能分解为更基本的数据单位时,称时,称R是满足第是满足第1范式的,简记为范式的,简记为1NF。2.第二范式第二范式如果关系模式如果关系模式R满足第满足第1范式,并且范式,并且R的所有非主属性都的所有非主属性都完全依赖于完全依赖于R的每一个候选关键属性,称的每一个候选关键属性,称R满足第满足第2范式,简范式,简记为记为2NF。3.第三范式第三范式设设R是一个满足第是一个满足第1范式条件的关系模式,范式条件的关系模式,X是是R的任意属的任意属性集,如果性集,如果X非传递依赖于非传递依赖于R的任意一个候选关键字,称的任意一个候选关键字,称R满满足第足第3范式,简记为范式,简记为3NF。模式分解见课本模式分解见课本例例2.8,例例2.9。精28292.3 关系规范化关系规范化从第一范式规范化到第三范式的过程如图从第一范式规范化到第三范式的过程如图2.2所示。所示。图图2.2 从从1NF规范化到规范化到3NF的过程的过程精29

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(关系数据库系统课件.ppt)为本站会员(ziliao2023)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|