《数据库系统概论》十一章汇总--基于《数据库系统概论》第五版王珊一书|第六章 --关系数据理论(下)

简介: 该系列的博客都是基于《数据库系统概论》第五版王珊一书,进行的知识总结和课后习题汇总,从第一章到第十一章,如果觉得不错记得收藏点个赞吧~你的小小支持,是我的大大动力!

无损分解和有损分解

网络异常,图片无法展示
|


网络异常,图片无法展示
|


课后答案:

综合题 建立一个关于系、学生、班级、学会等诸信息的关系数据库。   描述学生的属性有:学号、姓名、出生年月、系名、班号、宿舍区。   描述班级的属性有:班号、专业名、系名、人数、入校年份。   描述系的属性有:系名、系号、系办公室地点、人数。   描述学会的属性有:学会名、成立年份、地点、人数。   有关语义如下:一个系有若干专业,每个专业每年只招一个班,每个班有若干学生。一个系的学生住在同一宿舍区。每个学生可参加若干学会,每个学会有若干学生。学生参加某学会有一个入会年份。    请给出关系模式,写出每个关系模式的极小函数依赖集,指出是否存在传递函数依赖,对于函数依赖左部是多属性的情况讨论函数依赖是完全函数依赖,还是部分函数依赖。    指出各关系的候选码、外部码,有没有全码存在?

关系模式 学生S(S#,SN,SB,DN,C#,SA) S#—学号,SN—姓名,SB—出生年月,SA—宿舍区 班级C(C#,CS,DN,CNUM,CDATE) C#—班号,CS—专业名,CNUM—班级人数,CDATE—入校年份 系 D(D#,DN,DA,DNUM) D#—系号,DN—系名,DA—系办公室地点,DNUM—系人数 学会P(PN,DATE1,PA,PNUM) PN—学会名,DATE1—成立年月,PA—地点,PNUM—学会人数 学生–学会SP(S#,PN,DATE2) DATE2—入会年份

每个关系模式的极小函数依赖集 S:S#→SN,S#→SB,S#→C#,C#→DN,DN→SA C:C#→CS,C#→CNUM,C#→CDATE,CS→DN,(CS,CDATE)→C# D:D#→DN,DN→D#,D#→DA,D#→DNUM P:PN→DATE1,PN→PA,PN→PNUM SP:(S#,PN)→DATE2

S中存在传递函数依赖 S#→DN, S#→SA, C#→SA C中存在传递函数依赖 C#→DN (S#,PN)→DATE2 (CS,CDATE)→C# 均为SP中的函数依赖,是完全函数依赖

关系 候选码 外部码 全码 S S# C#,DN 无 C C#,(CS,CDATE) DN 无 D D#和DN 无 无 P PN 无 无 SP (S#,PN) S#,PN 无


试由Armostrong公理系统推导出下面三条推理规则 合并规则:若X→Z,X→Y,则有X→YZ 已知X→Z,由增广律知XY→YZ,又因为X→Y,可得XX→XY→YZ,最后根据传递律得X→YZ。 伪传递规则:由X→Y,WY→Z有XW→Z 已知X→Y,据增广律得XW→WY,因为WY→Z,所以XW→WY→Z,通过传递律可知XW→Z。 分解规则:X→Y,Z 包含于 Y,有X→Z 已知Z 包含于 Y,根据自反律知Y→Z,又因为X→Y,所以由传递律可得X→Z


试举出三个多值依赖的实例

关系模式MSC(M,S,C)中,M表示专业,S表示学生,C表示该专业的必修课。假设每个专业有多个学生,有一组必修课。设同专业内所有学生的选修的必修课相同,实例关系如下。按照语义对于M的每一个值M i,S有一个完整的集合与之对应而不问C取何值,所以M→→S。由于C与S的完全对称性,必然有M→→C成立。 M S CM 1 S1 C1M 1 S1 C2M 1 S2 C1M 1 S2 C2…… …… …… 关系模式ISA(I,S,A)中,I表示学生兴趣小组,S表示学生,A表示某兴趣小组的活动项目。假设每个兴趣小组有多个学生,有若干活动项目。每个学生必须参加所在兴趣小组的所有活动项目,每个活动项目要求该兴趣小组的所有学生参加。按照语义有I→→S,I→→A成立。 关系模式RDP(R,D,P)中,R表示医院的病房,D表示责任医务人员,P表示病人。假设每个病房住有多个病人,有多个责任医务人员负责医治和护理该病房的所有病人。按照语义有R→→D,R→→P成立。

辨析题


  • 任何一个二目关系都是属于3NF的。√
  • 任何一个二目关系都是属于BCNF的。√
  • 任何一个二目关系都是属于4NF的。√
  • 当且仅当函数依赖A→B在R上成立,关系R(A,B,C)等于其投影R1(A,B)和R2(A,C)的连接 ×
  • 当且仅当函数依赖A→→B在R上成立,关系R(A,B,C)等于其投影R1(A,B)和R2(A,C)的连接
  • 若R.A→R.B,R.B→R.C,则R.A→R.C √
  • 若R.A→R.B,R.A→R.C,则R.A→R.(B, C) √
  • 若R.B→R.A,R.C→R.A,则R.(B, C)→R.A √
  • 若R.(B, C)→R.A,则R.B→R.A,R.C→R.A ×
  • 反例:关系模式 SC(S#,C#,G) (S#,C#)→G,但是S# → G,C#→G

为了设计出性能较优的关系模式,必须进行规范化,规范化主要的理论依据是【关系规范化理论】 规范化理论是关系数据库进行逻辑设计的理论依据,根据这个理论,关系数据库中的关系必须满足:每一个属性都是【不可分解的】 已知关系模式R(A,B,C,D,E)及其上的函数相关性集合F={A→D,B→C ,E→A },该关系模式的候选关键字是【BE】


设学生关系S(SNO,SNAME,SSEX,SAGE,SDPART)的主键为SNO,学生选课关系SC(SNO,CNO,SCORE)的主键为SNO和CNO,则关系R(SNO,CNO,SSEX,SAGE,SDPART,SCORE)的主键为SNO和CNO,其满足【1NF】 设有关系模式W(C,P,S,G,T,R),其中各属性的含义是:C表示课程,P表示教师,S表示学生,G表示成绩,T表示时间,R表示教室,根据语义有如下数据依赖集:D={ C→P,(S,C)→G,(T,R)→C,(T,P)→R,(T,S)→R },关系模式W的一个关键字是【(T,S)】


  • 关系模式中,满足2NF的模式【必定是1NF】
  • 关系模式R中的属性全是主属性,则R的最高范式必定是【3NF】
  • 消除了部分函数依赖的1NF的关系模式,必定是【2NF】
  • 如果A->B ,那么属性A和属性B的联系是【多对一】
  • 关系模式的候选关键字可以有1个或多个,而主关键字有【1个】
  • 候选关键字的属性可以有【1个或多个】
  • 关系模式的任何属性【不可再分】
  • 设有关系模式W(C,P,S,G,T,R),其中各属性的含义是:C表示课程,P表示教师,S表示学生,G表示成绩,T表示时间,R表示教室,根据语义有如下数据依赖集:D={ C→P,(S,C)→G,(T,R)→C,(T,P)→R,(T,S)→R },若将关系模式W分解为三个关系模式W1(C,P),W2(S,C,G),W2(S,T,R,C),则W1的规范化程序最高达到【BCNF】


  • 在关系数据库中,任何二元关系模式的最高范式必定是【BCNF】在关系规范式中,分解关系的基本原则是【实现无损连接、保持原有的依赖关系】
  • 不能使一个关系从第一范式转化为第二范式的条件是【每一个非属性都部分函数依赖主属性】
  • 任何一个满足2NF但不满足3NF的关系模式都不存在【非主属性对键的传递依赖】

设数据库关系模式R=(A,B,C,D,E),有下列函数依赖:A→BC,D→E,C→D;下述对R的分解中,哪些分解是R的无损连接分解【(A,B,C)(C,D,E) 】【(A,B)(A,C,D,E)】


设U是所有属性的集合,X、Y、Z都是U的子集,且Z=U-X-Y。下面关于多值依赖的叙述中,不正确的是【若X→→Y,且Y′∈Y,则X→→Y′】 ,正确的是【若X→→Y,则X→→Z 】【若X→Y,则X→→Y 】【若Z=∮,则X→→Y 】

若关系模式R(U,F)属于3NF,则【仍存在一定的插入和删除异常】 下列说法不正确的是【任何一个包含三个属性的关系模式一定满足3NF】 设关系模式R(A,B,C),F是R上成立的FD集,F={B→C},则分解P={AB,BC}相对于F【是无损联接,也是保持FD的分解】 关系数据库规范化是为了解决关系数据库中【插入、删除和数据冗余】的问题而引入的。 关系的规范化中,各个范式之间的关系是【1NF∈2NF∈3NF】

数据库中的冗余数据是指可【由基本数据导出】的数据 学生表(id,name,sex,age,depart_id,depart_name),存在函数依赖是id→name,sex,age,depart_id;dept_id→dept_name,其满足【2NF】


设有关系模式R(S,D,M),其函数依赖集:F={S→D,D→M},则关系模式R的规范化程度最高达到【2NF】 设有关系模式R(A,B,C,D),其数据依赖集:F={(A,B)→C,C→D},则关系模式R的规范化程度最高达到【2NF】 下列关于函数依赖的叙述中,哪一条是不正确的【由X→YZ,则X→Y, Y→Z】,正确的是【由X→Y,Y→Z,则X→YZ】【由X→Y,WY→Z,则XW→Z 】【由X→Y,Z∈Y,则X→Z】 X→Y,当下列哪一条成立时,称为平凡的函数依赖【Y∈X】

关系数据库的规范化理论指出:关系数据库中的关系应该满足一定的要求,

最起码的要求是达到1NF,即满足【每个属性都是不可分解的】


根据关系数据库规范化理论,关系数据库中的关系要满足第一范式,部门(部门号,部门名,部门成员,部门总经理)关系中,因哪个属性而使它不满足第一范式【部门成员】 有关系模式A(C,T,H,R,S),其中各属性的含义是: C:课程 T:教员 H:上课时间 R:教室 S:学生

根据语义有如下函数依赖集: F={C→T,(H,R)→C,(H,T)RC,(H,S)→R}

关系模式A的码是【(H,S)】 关系模式A的规范化程度最高达到【2NF】 现将关系模式A分解为两个关系模式A1(C,T),A2(H,R,S),则其中A1的规范化程度达到【BCNF】

数据库外模式在【数据库逻辑结构设计】阶段设计 生成DBMS系统支持的数据模型在【数据库逻辑结构设计】阶段完成 根据应用需求建立索引在【数据库物理设计】阶段完成 员工性别取值“男”女”/“1”“0”属于【属性冲突】 数据库设计方法包括【新奥尔良方法】【基于E-R模型的方法】【3NF的设计方法】【面向对象的设计方法】【统一建模语言(UML)方法】 数据库设计的基本步骤包括【需求分析】【概念结构设计】【逻辑结构设计】【物理结构设计】【数据库实施】【数据库运行和维护】 集成E-R图要分两个步骤【合并、修改】和【重构】 数据库常见存取方法【索引】【聚簇】【Hash方法】

在进行概念结构设计时,将事物作为属性的基本准则是什么

作为属性,不能再具有需要描述的性质,属性必须是不可分的数据项,不能包含其他属性 属性不能与其他实体具有联系,即E-R图中所表示的联系是实体之间的联系

相关实践学习
体验RDS通用云盘核心能力
本次实验任务是创建一个云数据库RDS MySQL(通用云盘),并通过云服务器ECS对RDS MySQL实例进行压测,体验IO加速和IO突发带来的性能提升;并通过DMS执行DDL,将数据归档到OSS,再结合云盘缩容,体验数据归档带来的成本优势。
目录
相关文章
|
24天前
|
存储 人工智能 Cloud Native
云栖重磅|从数据到智能:Data+AI驱动的云原生数据库
在9月20日2024云栖大会上,阿里云智能集团副总裁,数据库产品事业部负责人,ACM、CCF、IEEE会士(Fellow)李飞飞发表《从数据到智能:Data+AI驱动的云原生数据库》主题演讲。他表示,数据是生成式AI的核心资产,大模型时代的数据管理系统需具备多模处理和实时分析能力。阿里云瑶池将数据+AI全面融合,构建一站式多模数据管理平台,以数据驱动决策与创新,为用户提供像“搭积木”一样易用、好用、高可用的使用体验。
云栖重磅|从数据到智能:Data+AI驱动的云原生数据库
|
2月前
|
关系型数据库 MySQL 数据库
ORM对mysql数据库中数据进行操作报错解决
ORM对mysql数据库中数据进行操作报错解决
87 2
|
26天前
|
SQL 关系型数据库 数据库
国产数据实战之docker部署MyWebSQL数据库管理工具
【10月更文挑战第23天】国产数据实战之docker部署MyWebSQL数据库管理工具
91 4
国产数据实战之docker部署MyWebSQL数据库管理工具
|
23天前
|
关系型数据库 分布式数据库 数据库
云栖大会|从数据到决策:AI时代数据库如何实现高效数据管理?
在2024云栖大会「海量数据的高效存储与管理」专场,阿里云瑶池讲师团携手AMD、FunPlus、太美医疗科技、中石化、平安科技以及小赢科技、迅雷集团的资深技术专家深入分享了阿里云在OLTP方向的最新技术进展和行业最佳实践。
|
1月前
|
人工智能 Cloud Native 容灾
云数据库“再进化”,OB Cloud如何打造云时代的数据底座?
云数据库“再进化”,OB Cloud如何打造云时代的数据底座?
|
1月前
|
SQL 存储 关系型数据库
数据储存数据库管理系统(DBMS)
【10月更文挑战第11天】
98 3
|
2月前
|
JavaScript Java 关系型数据库
毕设项目&课程设计&毕设项目:基于springboot+vue实现的在线考试系统(含教程&源码&数据库数据)
本文介绍了一个基于Spring Boot和Vue.js实现的在线考试系统。随着在线教育的发展,在线考试系统的重要性日益凸显。该系统不仅能提高教学效率,减轻教师负担,还为学生提供了灵活便捷的考试方式。技术栈包括Spring Boot、Vue.js、Element-UI等,支持多种角色登录,具备考试管理、题库管理、成绩查询等功能。系统采用前后端分离架构,具备高性能和扩展性,未来可进一步优化并引入AI技术提升智能化水平。
毕设项目&课程设计&毕设项目:基于springboot+vue实现的在线考试系统(含教程&源码&数据库数据)
|
2月前
|
Java 关系型数据库 MySQL
毕设项目&课程设计&毕设项目:springboot+jsp实现的房屋租租赁系统(含教程&源码&数据库数据)
本文介绍了一款基于Spring Boot和JSP技术的房屋租赁系统,旨在通过自动化和信息化手段提升房屋管理效率,优化租户体验。系统采用JDK 1.8、Maven 3.6、MySQL 8.0、JSP、Layui和Spring Boot 2.0等技术栈,实现了高效的房源管理和便捷的租户服务。通过该系统,房东可以轻松管理房源,租户可以快速找到合适的住所,双方都能享受数字化带来的便利。未来,系统将持续优化升级,提供更多完善的服务。
毕设项目&课程设计&毕设项目:springboot+jsp实现的房屋租租赁系统(含教程&源码&数据库数据)
|
1月前
|
SQL 存储 关系型数据库
添加数据到数据库的SQL语句详解与实践技巧
在数据库管理中,添加数据是一个基本操作,它涉及到向表中插入新的记录
|
1月前
|
SQL 监控 数据处理
SQL数据库数据修改操作详解
数据库是现代信息系统的重要组成部分,其中SQL(StructuredQueryLanguage)是管理和处理数据库的重要工具之一。在日常的业务运营过程中,数据的准确性和及时性对企业来说至关重要,这就需要掌握如何在数据库中正确地进行数据修改操作。本文将详细介绍在SQL数据库中如何修改数据,帮助读者更好
241 4
下一篇
无影云桌面