04735数据库系统原理课后习题参考答案.docx
答案仅供参考第一章 数据库系统概述选择题B、B、A简答题 1.请简述数据,数据库,数据库管理系统,数据库系统的概念。 P27 数据是描述事物的记录符号,是指用物理符号记录下来的,可以鉴别的信息。数据库即存储数据的仓库,严格意义上是指长期存储在计算机中的有组织的、可共享的数据集合。数据库管理系统是专门用于建立与管理数据库的一套软件,介于应用程序与操作系统之间。数据库系统是指在计算机中引入数据库技术之后的系统,包括数据库、数据库管理系统及相关实用工具、应用程序、数据库管理员与用户。2.请简述早数据库管理技术中,与人工管理、文件系统相比,数据库系统的优点。 数据共享性高数据冗余小易于保证数据一致性数据独立性高可以实施统一管理与控制减少了应用程序开发与维护的工作量3.请简述数据库系统的三级模式与两层映像的含义。 P31答: 数据库的三级模式是指数据库系统是由模式、外模式与内模式三级工程的,对应了数据的三级抽象。两层映像是指三级模式之间的映像关系,即外模式/模式映像与模式/内模式映像。4.请简述关系模型与网状模型、层次模型的区别。 P35 使用二维表结构表示实体及实体间的联系建立在严格的数学概念的基础上概念单一,统一用关系表示实体与实体之间的联系,数据结构简单清晰,用户易懂易用存取路径对用户透明,具有更高的数据独立性、更好的安全保密性。第二章 关系数据库选择题C、C、D简答题1.请简述关系数据库的基本特征。P48 答:关系数据库的基本特征是使用关系数据模型组织数据。 2.请简述什么是参照完整性约束。 P55答:参照完整性约束是指:若属性或属性组F是基本关系R的外码,与基本关系S的主码K相对应,则对于R中每个元组在F上的取值只允许有两种可能,要么是空值,要么与S中某个元组的主码值对应。 3.请简述关系规范化过程。 答:对于存在数据冗余、插入异常、删除异常问题的关系模式,应采取将一个关系模式分解为多个关系模式的方法进行处理。一个低一级范式的关系模式,通过模式分解可以转换为若干个高一级范式的关系模式,这就是所谓的规范化过程。第三章 数据库设计选择题B、C、C简答题1. 请简述数据库设计的基本步骤。 P66需求分析设计;概念结构设计;逻辑结构设计;物理结构设计;数据库设计;数据库的运行与维护。 2. 请分别举例说明实体之间联系的三种表现情形。 P74一对一联系:对于实体集A中的每个实体,实体集B中最多只有一个实体与之联系,反之亦然。举例:班级与班长,每个班只有一个班长,每个班长也只在一个班内任职。 一对多联系:对于实体集A中的每个实体,实体集B中有N个实体与之联系,反之,对于实体集B中的每个实体,实体集A中最多只有一个实体与之联系。举例:班级与班级成员,每个班级对应多个班级成员,每个班级成员只对应一个班级。 多对多联系:对于实体集A中的每个实体,实体集B中有N个实体与之联系,反之,对于实体集B中的每个实体,实体集A中有M个实体与之联系。举例:授课班级与任课教师,每个班级对应多名任课教师,每个任课教师也对应多个授课班级。 3.请简述基本E-R图向关系模型转换的原则。 P801) 一个实体型转换为一个关系模式。实体的属性作为关系的属性,实体的码作为关系的码。2)一个一对一联系(1:1)可以转换为一个关系模式,也可以与任意一端对应的关系模式合并。如果转换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,每个实体的码均是该关系的候选码;如果与某一端实体对应的关系模式合并,则需要在该关系模式的属性中加入另一个关系模式的码与联系本身的属性。3)一个一对多联系(1:N)可以转换为一个独立的关系模式,也可以与N端对应的关系模式合并。如果转换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为N端实体的码。4)一个多对多联系(M:N)转换为一个关系模式。与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,关系的码为各实体码的组合。三个或三个以上实体间的一个多元联系可以转换为一个关系模式。与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,关系的码为各实体码的组合。5)具有相同码的关系模式可以合并。第四章 SQL与关系数据库的基本操作选择题A 、C 、D填空题1.DDL DML DCL2.NULL3.PRIMARY KEY简答题1.请简述SQL是何种类型的语言。 P84答:SQL,是一种数据库查询与程序设计语言,用于存取数据以及查询、更新、管理关系数据库系统。2.请简述什么是子查询。 P114答:子查询是指嵌套在其他语句中(SELECT、INSERT)的SELECT查询语句。3.请简述视图与基本表的区别。P119 基本表是数据库中真实存在的表,而视图是建立在对数据库中真实表查询基础上的虚拟表。视图的内容是由存储在数据库中进行查询操作的SQL语句定义的,它的列数据与行数据均来自于定义视图的查询所引用的基本表。视图不适宜数据集的形式存储在数据库中的,它所对应的数据实际上是存储在视图所引用的基本表中的。视图是用来查看存储在别处的数据的一种虚拟表,本身不存储数据。第五章 数据库编程简答题1. 请简述存储过程的概念 P125存储过程是一组为了完成某项特定功能的SQL语句集,经过编译后存储在数据库中,可以由声明式的SQL语句与过程式的SQL语句组成,用户通过指定存储过程的名字与参数来调用并执行存储过程,完成特定任务。2. 请简述在数据库的操作中使用存储过程的优点 P125可增强SQL语言的功能与灵活性提供良好的封装性提高系统性能减少网络流量,降低网络负载作为一种安全机制来确保数据库的安全性与数据的完整性3. 请简述存储过程与存储函数的区别 P132存储函数不能拥有输出参数,自身即是输出参数;存储过程可以拥有输出参数存储函数可以被直接调用,而存储过程必须通过CALL语句调用存储函数中必须包含一条RETURN语句,而这条特殊的SQL语句不允许包含于存储过程中第六章 数据库安全选择题A、D、D填空题1. 实体完整性约束、参照完整性约束、用户自定义完整性约束2. Create user3. revoke简答题1. 请简述实体完整性的含义 P136答:实体完整性是指关系的主属性,即主码的组成不能为空。2. 请简述事务的概念与ACID特性 P152答:事务是由用户定义的一个数据操作序列,是一个不可分割的工作单元,要么全部执行,要么全部不执行。 事务的特性:A是指原子性,即事务是不可再分的最小单元;C是指一致性,要求事务必须满足数据库的完整性约束;I是指隔离性,要求事务是彼此独立、隔离的,即一个事务的执行不能被其他事务所干扰;D是指持续性,是指一个事务一旦提交,对数据库中数据的改变应该是永久性的。3. 请简述三种典型的并发操作问题 P154答:1)丢失更新;2)不可重复读;3)读“脏”数据。4. 请简述数据库备份的作用 P157答:在数据丢失或被破坏的情况下保证数据库中数据的可靠性与完整性。5. 设有如下三个事务,分别是T1:B=A+1、T2:B=B*2、T3:A=B+1,请回答: i)设A的初值为2,B的初值为1,如果这三个事务并发执行,则可能的正确执行结果有哪些? ii)给出一种遵循两段锁协议的并发调度策略。 答:i) T1-T2-T3: A 7, B 6 T1-T3-T2: A 4, B 6 T2-T1-T3: A 4, B 3 T2-T3-T1: A 3, B 4 T3-T1-T2: A 2, B 6 T3-T2-T1: A 2, B 3 ii)记Y为临时变量,给出服从两段锁协议的并发调度策略如下 T1:S(A),R(A),Y=A+1,X(B),W(B,Y),UL(A),UL(B),C T2:S(B),R(B),Y=B*2,X(B),W(B,Y),UL(B),C T3:S(B),R(B),Y=B+1,X(A),W(A,Y),UL(B),UL(A),C第七章 数据库设计与开发实例简答题1. 简述数据库应用软件设计与实现的基本步骤P162以数据库的声明周期为演化主线,可分为需求分析、系统功能与数据库设计、系统功能与数据库实现、测试与维护阶段2. 简述数据库应用软件开发过程中系统功能设计与数据库设计的区别与联系P165系统功能设计是以系统需求分析产生的需求报告为基础的,数据库设计是以功能设计与前期的需求分析为基础的,局部采用ER图最后合并成全局ER图,并将其转换成关系模式,以关系规范化理论进行优化与处理。第八章 数据管理技术的发展简答题1. 简述文章第三代数据库系统宣言中指出第三代数据库系统应具备的特征P180第三代数据库系统必须支持数据管理、对象管理与知识管理第三代数据库系统必须保持或集成第二代数据库系统技术第三代数据库系统必须对其他系统开放2. 描述数据仓库粒度的概念P182粒度是指数据仓库数据单位中保存数据的细化或综合程度3. 描述数据挖掘技术的功能P183概念描述关联分析分类与预测聚类孤立点检测趋势与演变分析4. 列举大数据的基本特征P185数据量巨大,大量化数据种类繁多,多样化处理速度快,快速化价值密度低第 11 页