版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
数据库管理系统应用第2章关系数据库设计理论目录2.1关系模型2.2关系代数2.3关系完整性2.4关系数据库的规范化理论了解关系模型的概念与分类了解关系数据结构及相关术语掌握关系代数的基本运算了解关系完整性的含义学习要点2.1关系模型
一个关系可以看做一个二维表,由表示一个实体的若干行或表示实体(集)某方面属性的若干列组成。
2.1.1关系模型的组成
关系模型由三大要素组成:关系数据结构关系操作集合关系完整性约束关系数据结构
关系模型把数据库表示为关系的集合。在用户看来,关系模型中数据的逻辑结构是一张二维表。关系操作集合
常用的操作包括:选择、投影、连接、除、并、交、差等,以及查询操作和插入、删除、更新操作。
查询操作是其中最主要的部分。关系的完整性约束
数据库的完整性是指数据库中数据的正确性、相容性和一致性。
完整性约束提供了一种手段保证当用户对数据库进行插入、删除、更新时不会破坏数据库中数据的正确性、相容性和一致性。2.1.2关系模型的数据结构和基本术语1.关系2.属性3.元组4.域5.关系模式6.码(关键字)7.候选码(候选关键字)8.主码(主关键字)9.外码(外关键字)关系
在关系模型中,一个关系就是一张二维表,每个关系有一个关系名。职工号姓名性别参加工作日期职称院系代码021001罗丽丽女2002/7/28讲师030201041012郭敏女2004/7/8副教授070101071004毛利男2007/7/8讲师050301…………………………981012章美玲女1998/2/14讲师050201991013王家辉男1999/7/8副教授050201关系名:教师关系属性
二维表中垂直方向的列称为属性,每一个列有一个属性名,列的值称为属性值。属性(列)和属性名职工号姓名性别参加工作日期职称院系代码021001罗丽丽女2002/7/28讲师030201041012郭敏女2004/7/8副教授070101071004毛利男2007/7/8讲师050301…………………………981012章美玲女1998/2/14讲师050201991013王家辉男1999/7/8副教授050201元组
二维表中水平方向的行称为元组,一行就是一个元组。元组对应数据表中的一条记录,元组的各分量对应于关系的各个属性。一个元组职工号姓名性别参加工作日期职称院系代码021001罗丽丽女2002/7/28讲师030201041012郭敏女2004/7/8副教授070101071004毛利男2007/7/8讲师050301…………………………981012章美玲女1998/2/14讲师050201991013王家辉男1999/7/8副教授050201元组集合域
属性所取值的变化范围称为属性的域(Domain)。
域约束规定属性的值必须是来自域中的原子值。性别参加工作日期女2002/7/28女2004/7/8男2007/7/8…………女1998/2/14男1999/7/8【例】“性别”属性的域:“男”或“女”。关系模式
关系的描述称为关系模式(RelationSchema)。可以形式化地表示为:R(U,D,Dom,F)
其中,R为关系名,U为属性名集合,D为U中属性所来自的域,Dom为属性向域的映像集合,F为属性间数据依赖关系的结合。关系模式
也可以简记为:R(U)或R(A1,A2,A3,…,An)
其中,A1,A2,A3,…,An为各属性名。【例】教师表的关系模式可记为:教师(职工号,姓名,性别,参加工作日期,职称,
院系代码)码(关键字)
能唯一标识一个元组的属性或属性组称为该关系的码或关键字。【例】在教师表中,“职工号”属性可以作为码;“职工号”、“姓名”的组合也可以作为码。职工号姓名性别参加工作日期职称院系代码021001罗丽丽女2002/7/28讲师030201041012郭敏女2004/7/8副教授070101071004毛利男2007/7/8讲师050301…………………………981012章美玲女1998/2/14讲师050201991013王家辉男1999/7/8副教授050201候选码(候选关键字)
如果关系中的一个码移去了任何一个属性,它就不再是这个关系的码,则称这样的码为该关系的候选码或候选关键字。【例】在教师表中,“职工号”属性可以作为候选码;但是,“职工号”和“姓名”的组合就不满足候选码的要求,因此不是候选码。主码(主关键字)
一个关系中往往有多个候选码,若选定其中一个用来唯一标识该关系的元组,则称这个被人为指定的候选码为该关系的主码或主关键字。(也称为主键)【例】在教师表中,我们可以指定“职工号”属性作为该关系的主码。外码(外关键字)
当关系中的某个属性或属性组虽然不是这个关系的主码,或只是主码的一部分,但却是另一个关系的主码时,则称该属性或属性组为这个关系的外码或外部关键字。外码(外关键字)职工号授课课号02100103020030410120701001…………9910130502001教师表授课表【例】“职工号”属性在授课表中不能单独作为主码,但在教师表中却是主码,我们就称“职工号”属性是授课表的外部关键字。职工号姓名性别……院系代码021001罗丽丽女……030201041012郭敏女……070101071004毛利男……050301……………………981012章美玲女……050201991013王家辉男……0502012.2关系代数
关系代数是以集合代数为基础发展起来的。
在关系代数的操作中,其操作对象和操作结果均为关系。
关系代数的基本运算有两类:传统的集合运算:并、交、差等。专门的关系运算:选择、投影、连接。2.2.1传统的集合运算
并、差、交是集合的传统运算形式,若关系R和S进行集合运算,那么R和S必须具有相同的属性集。并(Union)
设有关系R和S具有相同的属性集,则关系R和关系S的并由属于R或者属于S的元组组成。并(Union)
【例】设有关系R和S如下所示:ABC123456789ABC123258704RSABC123456789258704并运算结果R∪S差(Difference)
设有关系R和S具有相同的属性集,则关系R和关系S的差由属于R并且不属于S的元组组成。差(Difference)
【例】设有关系R和S如下所示:ABC123456789ABC123258704RSABC456789差运算结果R-S交(Intersection)
设有关系R和S具有相同的属性集,则关系R和关系S的交由既属于R又属于S的元组组成。
【例】设有关系R和S如下所示:ABC123456789ABC123258704RSABC123交运算结果R∩S交(Intersection)2.2.2专门的关系运算
专门的关系运算根据操作对象数目的不同,可以分为两类:一元运算:选择、投影二元运算:联接选择(Selection)
选择是在关系R中选择满足给定条件的元组,即从行的角度进行过滤,记作:其中,F表示选择条件。
【例】设有关系R如下所示:ABC123456789RABC789选择结果条件:A>5选择(Selection)投影(Projection)
投影是在关系R中选择若干属性列,并且将这些列组成一个新的关系,即从列的角度进行过滤,记作:
【例】设有关系R如下所示:ABC123456789RAB124578投影结果只查询A和B列投影(Projection)笛卡尔积(CartesianProduct)
笛卡尔积(CartesianProduct)【例】设有关系R和S如下所示:R1R2R3123456789RS1S2S3abcdefS
R1R2R3S1S2S3123abc123def456abc456def789abc789def
笛卡尔积(CartesianProduct)
由上例可以看出,若干个域的笛卡尔积具有相当多的元素,在实际应用中可能包含许多“无意义”的元素。
人们通常感兴趣的只是笛卡尔积的某些子集,笛卡尔积的一个子集就是一个关系。连接(Join)
连接是将两个关系拼接成一个更宽的关系,生成的新关系中包含满足连接条件的元组,记作:
其中,iθj是一个比较式,i和j分别是R和S中的域,θ为算术比较符。
【例】设有关系R和S如下所示:ABCD123478054192EFG497852RSABCDEFG1234497123485278054977805852连接结果联接(Join)自然连接(NaturalJoin)
自然连接是一种特殊的等值联接,要求关系R和S中具有相同的属性组,取共有属性值相等的元组进行连接,并且在结果中把重复的属性去除。
【例】设有关系R和S如下所示:ABCD1234780541925863DEF497852209253RSABCDEF123497419209419253自然连接结果自然连接(NaturalJoin)除(Division)
除法运算就是笛卡尔积的逆运算。【例】设有关系R和S如下所示:ABCD123456345670127012585629CD3470RSAB结果STEP1:除法运算结果中包含的属性列为:出现在R中,但是没有在S中出现的属性列。除(Division)
除法运算就是笛卡尔积的逆运算。【例】设有关系R和S如下所示:ABCD123456345670127012585629CD3470RSAB结果STEP2:在R中,找出与S中每个元组搭配的属性组的值。除(Division)
除法运算就是笛卡尔积的逆运算。【例】设有关系R和S如下所示:ABCD123456345670127012585629CD3470RSAB1256结果STEP3:从这些属性组中找出值相同的元组,即为除法运算的结果。除(Division)
除法运算就是笛卡尔积的逆运算。【例】设有关系R和S如下所示:ABCD123456345670127012585629CD347058RSAB12结果2.3关系完整性
关系模型的完整性规则是对关系的某种约束条件。
关系模型有三类完整性约束:实体完整性参照完整性用户自定义完整性实体完整性
实体完整性要求表中的主码不能取空值或重复的值。【例】有关系:
教师(职工号,姓名,性别,参加工作日期,职称,
院系代码)
其中,“职工号”属性是主码,那么“职工号”不可以取空值,也不能有重复值。参照完整性
参照完整性就是定义外码与主码之间的引用规则,也就是外码要么取空值,要么等于对应主码中的某个值。参照完整性【例】有两个关系:教师(职工号,姓名,性别,参加工
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 辽宁铁道职业技术学院《规则与裁判法》2023-2024学年第一学期期末试卷
- 兰州城市学院《建筑设备施工安装技术》2023-2024学年第一学期期末试卷
- 江西电力职业技术学院《智慧工地》2023-2024学年第一学期期末试卷
- 湖南第一师范学院《篆刻3》2023-2024学年第一学期期末试卷
- 黑龙江生态工程职业学院《风景建筑速写》2023-2024学年第一学期期末试卷
- 重庆护理职业学院《民事诉讼法学(含模拟法庭)》2023-2024学年第一学期期末试卷
- 中央财经大学《人工智能专业前沿》2023-2024学年第一学期期末试卷
- 郑州软件职业技术学院《英语模拟课堂》2023-2024学年第一学期期末试卷
- 小学2024年体育发展年度报告
- 浙江电力职业技术学院《生物信息学前沿技术》2023-2024学年第一学期期末试卷
- 关于斗争精神不足的整改措施【三篇】
- 初三物理寒假课程
- 如何预防心脑血管病
- LY/T 3321-2022草原生态价值评估技术规范
- 《新媒体文案创作与传播》期末试卷1
- 人感染H7N9禽流感流行病学调查和处置
- 高等院校内部控制多模型决策方法研究
- 木栈道专项施工方案(同名3601)
- GB/T 11957-2001煤中腐植酸产率测定方法
- 浙江省普通高中通用技术学科教学指导意见
- HRB500级钢筋施工要点ppt课件
评论
0/150
提交评论