第二章-关系数据库.ppt
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《第二章-关系数据库.ppt》由会员分享,可在线阅读,更多相关《第二章-关系数据库.ppt(31页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、教学进度教学进度教学进度教学进度计算机科学与工程系计算机科学与工程系第二章第二章关系数据库关系数据库关关系系数数据据库库采采用用了了关关系系模模型型作作为为数数据据的的组组织织方方式式,这这就就涉涉及及关关系系模模型型中中的的一一些些基基本本概概念念。而而对对关关系系数数据据库库进进行行查查询询时时,若若要要找找到需要的数据到需要的数据,就要对关系进行一定的运算。就要对关系进行一定的运算。本本章章主主要要讲讲解解关关系系数数据据库库的的相相关关概概念念,包括关系模型和关系代数。包括关系模型和关系代数。教学进度教学进度教学进度教学进度计算机科学与工程系计算机科学与工程系2.1关系数据模型的基本概
2、念关系数据模型的基本概念 关关系系模模型型由由关关系系数数据据结结构构、关关系系操操作作集集合合和和关关系系完完整整性约束三部分组成。性约束三部分组成。(关系模型的建立关系模型的建立-第五章第五章)1.关系模型数据结构关系模型数据结构概念模型转换成关系模型是用二维表形式概念模型转换成关系模型是用二维表形式(关系关系)表示实表示实体集的数据结构。体集的数据结构。(关系模型是逻辑模型的其中一种关系模型是逻辑模型的其中一种)关系模型中的一些术语:关系模型中的一些术语:(1)关系:一个关系通常对应一张二维表。关系:一个关系通常对应一张二维表。如:学生表。如:学生表。(2)元组:关系中的每一行称为一个元
3、组。元组:关系中的每一行称为一个元组。如:表中一个学生记录即为一个元组。如:表中一个学生记录即为一个元组。(3)属属性性:关关系系中中的的每每一一列列为为一一个个属属性性。给给每每一一个个属属性性起一个名称即属性名。起一个名称即属性名。如:表中属性如:表中属性(学号,姓名,性别,出生年月,籍贯学号,姓名,性别,出生年月,籍贯)教学进度教学进度教学进度教学进度计算机科学与工程系计算机科学与工程系广东广东1986-8-13男男黄国度黄国度050104湖南湖南1985-9-12女女李玉李玉050103江苏江苏1986-8-8男男王五王五050102广东广东1986-6-9男男张三秋张三秋050101
4、籍贯籍贯出生年月出生年月性别性别姓名姓名学号学号列:属性对应字段列:属性对应字段行:元组对应记录行:元组对应记录关系对应二维表关系对应二维表主键主键分量对应数据项分量对应数据项关系模型与关系数据库的对应关系关系模型与关系数据库的对应关系教学进度教学进度教学进度教学进度计算机科学与工程系计算机科学与工程系 (4)键是关系模型中的一个重要概念,有以下几种:键是关系模型中的一个重要概念,有以下几种:候选键:如果一个属性或属性集能唯一标识元组,且候选键:如果一个属性或属性集能唯一标识元组,且又不含多余的属性或属性集,那么这个属性或属性集称为关又不含多余的属性或属性集,那么这个属性或属性集称为关系模式的
5、候选键。系模式的候选键。超超键键:能能唯唯一一标标识识元元组组的的属属性性集集称称为为关关系系模模式式的的超超键键。(可能存在多余的属性可能存在多余的属性)例如:学号例如:学号+姓名姓名(就是超键,因为姓名实际是多余的就是超键,因为姓名实际是多余的)例如:学号(就是候选键,有的表中这类键可能有多个例如:学号(就是候选键,有的表中这类键可能有多个,如身份证号、学号等)如身份证号、学号等)教学进度教学进度教学进度教学进度计算机科学与工程系计算机科学与工程系主键:多个候选键中用户指定的候选键称主键。主键:多个候选键中用户指定的候选键称主键。例如:学生表中的例如:学生表中的“学号学号”(5)域:属性的
6、取值范围。域:属性的取值范围。例例如如:人人的的年年龄龄一一般般在在1150岁岁之之间间,性性别别的的域域是是(男男,女)等。女)等。候选键、主键和外键也称为候选码、主码和外码。候选键、主键和外键也称为候选码、主码和外码。外键:可作为其它关系模式的主键的属性或属性集外键:可作为其它关系模式的主键的属性或属性集称外键。称外键。例如:学生表中的例如:学生表中的“班级编号班级编号”(外键外键)可作为班级表中可作为班级表中的主键。的主键。班级班级(班级编号班级编号,班级名称,班长姓名,专业,系编号,班级名称,班长姓名,专业,系编号)学生学生(学号学号,姓名,性别,出生年月,籍贯,班级编号,姓名,性别,
7、出生年月,籍贯,班级编号)教学进度教学进度教学进度教学进度计算机科学与工程系计算机科学与工程系(6)分量:元组中的一个属性值。分量:元组中的一个属性值。例如:张三秋、男等。例如:张三秋、男等。(7)关系模式:对关系的描述。关系模式:对关系的描述。一般表示为:关系名(属性一般表示为:关系名(属性1,属性,属性2,属性,属性n)例如:学生例如:学生(学号学号,姓名姓名,性别性别,出生年月出生年月,籍贯籍贯)(8)关关系系数数据据库库:就就是是由由一一个个或或一一个个以以上上的的关关系系或或二二维维表表彼彼此此关关联联组组成成的的。其其中中关关系系之之间间的的联联系系是是通通过过一一个个关关系系的的
8、候选键或主键与另一个关系的外键建立的。候选键或主键与另一个关系的外键建立的。例如:例如:班级班级(班级编号班级编号,班级名称,班长姓名,专业,系编号,班级名称,班长姓名,专业,系编号)学生学生(学号学号,姓名,性别,出生年月,籍贯,班级编号,姓名,性别,出生年月,籍贯,班级编号)教学进度教学进度教学进度教学进度计算机科学与工程系计算机科学与工程系关系模型的主要特点关系模型的主要特点学号学号姓名姓名性别性别年龄年龄系别系别S1S1赵亦赵亦女女1717计算机计算机S2S2钱尔钱尔男男1818信息信息S3S3孙珊孙珊女女2020信息信息S4S4李思李思男男2121自动化自动化S5S5周武周武男男19
9、19计算机计算机S6S6吴丽吴丽女女2020自动化自动化关系中每一分量不可再分,是最基本的数据单位。关系中每一分量不可再分,是最基本的数据单位。每列分量属性相同,列根据需要而设,各列的顺序可任意。每列分量属性相同,列根据需要而设,各列的顺序可任意。每一行由多个属性构成一个元组,各行的顺序可任意。每一行由多个属性构成一个元组,各行的顺序可任意。一一个个关关系系是是一一张张二二维维表表,不不允允许许有有相相同同的的属属性性名名,也也不不允允许许有有相相同同的元组。的元组。教学进度教学进度教学进度教学进度计算机科学与工程系计算机科学与工程系2.关系操作关系操作数数据据操操作作是是对对数数据据库库中中
10、各各种种数数据据操操作作的的集集合合,包包括括操操作作及相应的操作规则。及相应的操作规则。如:查询、插入、删除和修改。如:查询、插入、删除和修改。3.关系模型的完整性约束关系模型的完整性约束包括三种完整性约束:包括三种完整性约束:实体完整性实体完整性是是对对关关系系中中元元组组的的唯唯一一性性约约束束,即即对对主主键键的的约约束束,关关系系中的主键不能是空值且不能有相同值。中的主键不能是空值且不能有相同值。如:如:“学生学生”表中不允许有两个以上相同的学生编号存表中不允许有两个以上相同的学生编号存在,也不允许学生编号为在,也不允许学生编号为Null。教学进度教学进度教学进度教学进度计算机科学与
11、工程系计算机科学与工程系参照完整性参照完整性是是对对外外键键的的约约束束,关关系系中中的的外外键键必必须须是是另另一一个个关关系系的的主主键有效值或空值键有效值或空值(Null)。如如:“班班级级”表表与与“学学生生”表表是是一一对对多多关关系系,此此时时,“班班级级”表表中中的的班班级级编编号号是是主主键键,“学学生生”表表中中的的班班级编号级编号是外键,那么,外键的值必须是主键的有效值。是外键,那么,外键的值必须是主键的有效值。班级班级(班级编号班级编号,班级名称,班长姓名,专业,系编号,班级名称,班长姓名,专业,系编号)学生学生(学号,姓名,性别,出生年月,籍贯,学号,姓名,性别,出生年
12、月,籍贯,班级编号班级编号)用户自定义的完整性用户自定义的完整性用户自行定义的删除、更新、插入约束。用户自行定义的删除、更新、插入约束。如:在往学生表中插入数据时不允许学生编号和学生名如:在往学生表中插入数据时不允许学生编号和学生名称为称为Null,性别只能中,性别只能中“男男”或或“女女”等。等。教学进度教学进度教学进度教学进度计算机科学与工程系计算机科学与工程系关关系系代代数数是是一一种种抽抽象象的的查查询询语语言言,是是作作为为研研究究关关系系数数据据库库的的数数学学工工具具,是是数数据据库库原原理理和和计计算算机机数数据据库库应应用用的的基基础础。关关系系代代数数的的运运算算对对象象是
13、是关关系,运算结果亦为关系。系,运算结果亦为关系。2.2关系代数关系代数 关系代数的运算可分为两类:关系代数的运算可分为两类:1.传统的集合运算传统的集合运算2.专门的关系运算专门的关系运算教学进度教学进度教学进度教学进度计算机科学与工程系计算机科学与工程系1.传统的集合运算传统的集合运算传传统统的的集集合合运运算算包包括括四四种种运运算算:并并()、交交()、差差()、广义笛卡尔积、广义笛卡尔积(X)。RS集合(1)并运算并运算关关系系R和和S的的并并将将产产生生一一个个包包含含R、S中中所所有有不不同同元元组组的的新关系,记作新关系,记作RS。关关系系R和和关关系系S必必须须要要有有相相同
14、同的的属属性性,并并且且对对应应属属性性要要有有相同的域。相同的域。教学进度教学进度教学进度教学进度计算机科学与工程系计算机科学与工程系例例如如:某某公公司司有有两两个个子子公公司司营营业业库库,现现要要对对全全公公司司营营业业情情况况进进行行统统计计,操操作作时时首首先先把把两两表表内内容容合合并并为为一一个个表表,再在一个表中进行统计,即求再在一个表中进行统计,即求:营业库营业库营业库营业库1营业库营业库2在进行并操作时,如有完全同的元组应只保留一个。在进行并操作时,如有完全同的元组应只保留一个。营业库1商品代商品代码子公司代子公司代码品名品名数量数量单价价1Comp1钢笔笔5010002
15、Comp1圆珠笔珠笔2006003comp1练习本本10003004comp1笔笔记本本1000800营业库2商品代商品代码子公司代子公司代码品名品名数量数量单价价1Comp2钢笔笔5010.005Comp2练习本本2003.006comp2信信笺10003.00营业库营业库1营业库营业库2运算结果运算结果商品代码商品代码字公司代码字公司代码品名品名数量数量单价单价1Comp1练习本本20010.002Comp1圆珠笔珠笔506.003Comp1练习本本10003.004Comp1笔笔记本本10008.001Comp2钢笔笔5010.005Comp2练习本本2003.006Comp2信信笺10
16、003.00教学进度教学进度教学进度教学进度计算机科学与工程系计算机科学与工程系例例如如:有有在在职职职职工工和和离离退退休休职职工工两两个个表表,若若需需要要所所有有职工表,可利用并运算实现,即职工表,可利用并运算实现,即:新的职工表在职职工表新的职工表在职职工表离退休职工表离退休职工表教学进度教学进度教学进度教学进度计算机科学与工程系计算机科学与工程系(2)差运算差运算所所有有属属于于关关系系R但但不不属属于于S的的元元组组组组成成的的新新关关系系,记记作作RS。R-S集合例例如如:要要将将下下面面的的成成绩绩表表中中有有关关“数数学学”科科目目的的元元组组删除,即求成绩表成绩表删除,即求
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第二 关系 数据库
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内