电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

数据库系统概论_离线作业第2次答案

12页
  • 卖家[上传人]:suns****4568
  • 文档编号:89443793
  • 上传时间:2019-05-25
  • 文档格式:PDF
  • 文档大小:300KB
  • / 12 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 1、数据库系统概论离线作业第 2 次参考解答 第第 6 章章 关系数据库理论关系数据库理论 2. 建立一个关于系、学生、班级、学会等诸信息的关系数据库。建立一个关于系、学生、班级、学会等诸信息的关系数据库。 描述学生的属性有:学号、姓名、出生年月、系名、班号、宿舍区。 描述班级的属性有:班号、专业名、系名、人数、入校年份。 描述系的属性有:系名、系号、系办公室地点、人数。 描述学会的属性有:学会名、成立年份、地点、人数。 语义如下:一个系有若干专业,每个专业每年只招一个班,每个班有若干学生。一个系 的学生住在同一宿舍区。每个学生可参加若干学会,每个学会有若干学生。学生参加某学会 有一个入会年份。 请给出关系模式,写出每个关系模式的极小函数依赖集,指出是否存在传递函数依赖, 对于函数依赖左部是多属性的情况讨论函数依赖是完全函数依赖,还是部分函数依赖。 指出各关系模式的候选码、外部码,有没有全码存在? 解: 解析 应该根据题目中给出的有关语义写出关系模式中的数据依赖, 有些依赖可以按照实际情 况写出, 也许题目中并没有明显指出。 例如, 按照实际情况, 系名和系号是一一对应的, 因此有 D #

      2、 DN, DND #。 12. 下面的结论哪些是正确的下面的结论哪些是正确的? 哪些是错误的哪些是错误的? 对于错误的请给一个反例说对于错误的请给一个反例说明之。明之。 考查点:关系模式的规范化,函数依赖、多值依赖 (1)任何一个二目关系是属于 3NF。 (2)任何一个二目关系是属于 BCNF。 (3)任何一个二目关系是属于 4NF。 (4) 当且仅当函数依赖 A-B 在 R 上成立, 关系 R(A,B,C)等于其投影 R1(A,B) 和 R2(A,C) 的连接。 当 AB 在 R 上成立,关系 R(A,B,C)等于其投影 R1(A,B) 和 R2(A,C)的连接。反之则 不然。 正确的应当是: 当且仅当多值依赖 AB 在 R 上成立, 关系 R(A,B,C)等于其投影 R1(A,B) 和 R2(A,C) 的连接。 (5)若 R.A-R.B,R.B-R.C,则 R.A-R.C。 (6)若 R.A-R.B,R.A-R.C,则 R.A-R.(B,C)。 (7)若 R.B-R.A,R.C-R.A,则 R.(B,C)-R.A。 (8)若 R.(B,C)-R.A 则 R.B-R.A,R.C-R.

      3、A。 第第 7 章章 数据库设计数据库设计 9. 试述数据库概念结构设计的重要性和设计步骤。试述数据库概念结构设计的重要性和设计步骤。 答: 重要性: 数据库概念设计是整个数据库设计的关键, 将在需求分析阶段所得到的应用需 求首先抽象为概念结构,以此作为各种数据模型的共同基础,从而能更好地、更准确地用某 一 DBMS 实现这些需求。 设计步骤:概念结构的设计方法有多种,其中最经常采用的策略是自底向上方法,该方 法的设计步骤通常分为两步: 第 1 步是抽象数据并设计局部视图, 第 2 步是集成局部视图, 得到全局的概念结构。 11. 什么是数据库的逻辑结构设计?试述其设计步骤。什么是数据库的逻辑结构设计?试述其设计步骤。 答: 数据库的逻辑结构设计就是把概念结构设计阶段设计好的基本 E-R 图转换为与选用的 DBMS 产品所支持的数据模型相符合的逻辑结构。 设计步骤为: (l)将概念结构转换为一般的关系、网状、层次模型; (2)将转换来的关系、网状、层次模型向特定 DBMS 支持下的数据模型转换; (3)对数据模型进行优化。 12. 试把第一章习题试把第一章习题 12 和习题和习题 13

      4、 中的中的 E-R 模型转换为关系模型。模型转换为关系模型。 答: 习题 12. 学校中有若干个系,每个系有若干班级和教研室,每个教研室有若干教员,其中有 教授和副教授每人各带若干研究生,每个班有若干学生,每个学生选修若干课程,每门课程 可由若干学生选修。请用 E-R 图画出此学校的概念模型。 解析 在画 E-R 图时,按照习题中对问题的描述一步一步画出每一句话中涉及的实体,再根 据给出的实际语义,画出实体之间的联系。例如,每个教研室有若干教员,每个班有若干学 生,可以画出教研室和教员、班级和学生之间一对多的联系。再如,有的教授和副教授每人 各带若干研究生,而一个研究生一般指定一个导师,这是通常的规则,所以可以画出教员和 学生之间一对多的联系。 E-R 图: 转化为关系模型为(下划线表示是主码属性) : 系(系编号, 系名, 系主任) 班级(班级编号, 班级名, 年级, 系编号) 教研室(教研室编号, 名称, 主任, 系编号) 学生(学号,姓名,性别, 学历, 研究方向, 导师职工号) 课程(课程号,课程名,学分) 教员(职工号, 姓名, 职称, 教研室编号) 选课(学号, 课程号,

      5、成绩) 习题13. 某工厂生产若干产品, 每种产品由不同的零件组成, 有的零件可用在不同的产品上。 这些零件由不同的原材料制成, 不同零件所用的材料可以相同。 这些零件按所属的不同产品 分别放在仓库中,原材料按照类别放在若干仓库中。请用E-R图画出此工厂产品、零件、材 料、仓库的概念模型。 解析 对实体之间联系的语义描述有时不是直截了当的, 需要从对现实世界的整体拮述中进行 分析,导出实体之间的某种联系。就如本题中,“零件和仓库的联系“就要从以下描述中分析: “零件按所属的不同产品分别放在仓库中“。因为一个产品由多种零件组成的,所以一个仓库 中存放多种零件: 反过来一种零件是放在一个仓库还是多个仓库中呢? 因为一种零件可以 用在多种产品上, 这些零件按所属的不同产品分别放在仓库中, 于是知道一种零件可以放在 多个仓库中,所以零件和仓库之间是多对多的联系。“材料和仓库的联系“则根据“原材料按 照类别放在若干仓库“ 这句话就可以得出: 一个仓库中放多种材料,而一种材料只放在一个 仓库中,所以仓库和材料之间是一对多的联系。 E-R 图: 转换成关系模型为(下划线表示是主码属性) : 仓库(仓

      6、库号,仓库名) 产品(产品号,产品名称,仓库号) 零件 (零件号,零件名称) 材料(材料号, 材料名称, 材料类别, 仓库号, 存放量) 产品组成(产品号,零件号,使用零件数量) 零件组成(零件号, 材料号,使用材料数量) 零件储存(零件号,仓库号, 存储量) 第第 9 章章 关系查询处理和查询优化关系查询处理和查询优化 2. 对学生对学生-课程数据库有如下的查询:课程数据库有如下的查询: SELECT Cname FROM Student,Course,SC WHERE Student. Sno = SC. Sno AND SC .Cno = Course.Cno AND Student. Sdept=IS; 此查询要求信息系学生选修了的所有课程名称。 试画出用关系代数表示的语法树, 并用关系代数表达式优化算法对原始的语法树进行优化 处理,画出优化后的标准语法树。 答: 第第 10 章章 数据库恢复技术数据库恢复技术 6. 数据库转储的意义是什么?试比较各种数据转储方法。数据库转储的意义是什么?试比较各种数据转储方法。 答: 数据转储是数据库恢复中采用的基本技术。 所谓转储即 DBA

      7、 定期地将数据库复制到磁 带或另一个磁盘上保存起来的过程。 当数据库遭到破坏后可以将后备副本重新装入, 将数据 库恢复到转储时的状态。 恢复 恢复数据库到Tb时刻的正确状态 转储开始转储结束 TaTb 运行事务 发生故障 重装后备副本 静态转储:在系统中无运行事务时进行的转储操作,如上图所示。静态转储简单,但必 须等待正运行的用户事务结束才能进行。 同样, 新的事务必须等待转储结束才能执行。 显然, 这会降低数据库的可用性。 动态转储: 指转储期间允许对数据库进行存取或修改。 动态转储可克服静态转储的缺点, 它不用等待正在运行的用户事务结束,也不会影响新事务的运行。但是,转储结束时后援副 本上的数据并不能保证正确有效。 因为转储期间运行的事务可能修改了某些数据, 使得后援 副本上的数据不是数据库的一致版本。 为此,必须把转储期间各事务对数据库的修改活动登记下来,建立日志文件(log file )。 这样,后援副本加上日志文件就能得到数据库某一时刻的正确状态。 转储还可以分为海量转储和增量转储两种方式。 海量转储是指每次转储全部数据库。 增量转储则指每次只转储上一次转储后更新过的数 据。

      8、从恢复角度看,使用海量转储得到的后备副本进行恢复一般说来更简单些。但如果数据 库很大,事务处理又十分频繁,则增量转储方式更实用、更有效。 7. 什么是日志文件?为什么要设立日志文件?什么是日志文件?为什么要设立日志文件? 答: (1)日志文件是用来记录事务对数据库的更新操作的文件。 (2)设立日志文件的目的是:进行事务故障恢复;进行系统故障恢复;协助后备副本进行 介质故障恢复。 有关日志文件的具体作用,可以参考数据库系统概论第四版第 10.4.2 小节。 8. 登记日志文件时为什么必须先写日志文件,后写数据库?登记日志文件时为什么必须先写日志文件,后写数据库? 答: 把对数据的修改写到数据库中和把表示这个修改的日志记录写到日志文件中是两个不 同的操作。有可能在这两个操作之间发生故障,即这两个写操作只完成了一个。 如果先写了数据库修改, 而在运行记录中没有登记这个修改, 则以后就无法恢复这个修 改了。如果先写日志,但没有修改数据库,在恢复时只不过是多执行一次 UNDO 操作,并 不会影响数据库的正确性。所以一定要先写日志文件,即首先把日志记录写到日志文件中, 然后写数据库的修改。 第第

      9、11 章章 并发控制并发控制 4. 如何用封锁机制保证数据的一致性?如何用封锁机制保证数据的一致性? 答: DBMS 在对数据进行读、写操作之前首先对该数据执行封锁操作,例如下图中事务 Tl 在对 A 进行修改之前先对 A 执行 Xlock ( A ) , 即对 A 加 x 锁。 这样, 当 T2请求对 A 加 x 锁时就被拒绝,T2只能等待 Tl释放 A 上的锁后才能获得对 A 的 x 锁,这时它读到的 A 是 Tl更新后的值,再按此新的 A 值进行运算。这样就不会丢失 Tl 的更新。 T1T2 1 2 3 4 5 Xlock(A) 获得控制权 读A=16 AA-1 Xlock(A) 等待 等待 等待 等待 获得Xlock(A) 读A=15 AA-1 写回A=14 Commit Unlock(A) 写回A=15 Commit Unlock(A) DBMS 按照一定的封锁协议对并发操作进行控制,使得多个并发操作有序地执行,就可 以避免丢失修改、不可重复读和读“脏”数据等数据不一致性。 7. 请给出检测死锁发生的一种方法,当发生死锁后如何解除死锁?请给出检测死锁发生的一种方法,当发生死锁后如何解除死锁? 答: 数据库系统一般采用允许死锁发生,DBMS 检测到死锁后加以解除的方法。 DBMS中诊断死锁的方法与操作系统类似,一般使用超时法或事务等待图法。 超时法是:如果一个事务的等待时间超过了规定的时限,就认为发生了死锁。超时法实 现简单,但有可能误判死锁,事务因其他原因长时间等待超过时限时,系统会误认为发生了 死锁。若时限设置得太长,又不能及时发现死锁发生。 事务等待图法请参见数据库系统概论第四版中的11.3.2小节。 DBMS 并发控制子系统检测到死锁后,就要设法解除。通常采用的方法是选择一个处 理死锁代价最小的事务,将其撤消,释放此事务持有的所有锁,使其他事务得以继续运行下 去。当然,对撤销的事务所执行的数据修改操作必须加以恢复。 9. 设设 Tl ,T2,T3是如下的是如下的 3 个事务个事务: Tl :A : = A + 2 ; T2:A : = A * 2 ; T3:A : = A *2 ; ( A A*A) 设 A 的初值为 0 (l) 若这 3 个事务允许并行执行,则有多少可能的正

      《数据库系统概论_离线作业第2次答案》由会员suns****4568分享,可在线阅读,更多相关《数据库系统概论_离线作业第2次答案》请在金锄头文库上搜索。

      点击阅读更多内容
    最新标签
    发车时刻表 长途客运 入党志愿书填写模板精品 庆祝建党101周年多体裁诗歌朗诵素材汇编10篇唯一微庆祝 智能家居系统本科论文 心得感悟 雁楠中学 20230513224122 2022 公安主题党日 部编版四年级第三单元综合性学习课件 机关事务中心2022年全面依法治区工作总结及来年工作安排 入党积极分子自我推荐 世界水日ppt 关于构建更高水平的全民健身公共服务体系的意见 空气单元分析 哈里德课件 2022年乡村振兴驻村工作计划 空气教材分析 五年级下册科学教材分析 退役军人事务局季度工作总结 集装箱房合同 2021年财务报表 2022年继续教育公需课 2022年公需课 2022年日历每月一张 名词性从句在写作中的应用 局域网技术与局域网组建 施工网格 薪资体系 运维实施方案 硫酸安全技术 柔韧训练 既有居住建筑节能改造技术规程 建筑工地疫情防控 大型工程技术风险 磷酸二氢钾 2022年小学三年级语文下册教学总结例文 少儿美术-小花 2022年环保倡议书模板六篇 2022年监理辞职报告精选 2022年畅想未来记叙文精品 企业信息化建设与管理课程实验指导书范本 草房子读后感-第1篇 小数乘整数教学PPT课件人教版五年级数学上册 2022年教师个人工作计划范本-工作计划 国学小名士经典诵读电视大赛观后感诵读经典传承美德 医疗质量管理制度 2 2022年小学体育教师学期工作总结 2022年家长会心得体会集合15篇
    关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
    手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
    ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.