数据库系统及应用教程(SQL Server 2008)习题1-8章答案 联系客服

发布时间 : 星期六 文章数据库系统及应用教程(SQL Server 2008)习题1-8章答案更新完毕开始阅读

6.设关系模式R(ABCD),F是R上成立的FD集,F={A→B,C→B},则相对于F,试写出关系模式R的候选键。并说明理由。

解:R的关键码为ACD。因为从已知的F,A→B,只能推出ACD→ABCD。 7.设关系模式R(ABCD),F是R上成立的FD集,F={AB→CD,A→D}。 (1) 试说明R不是2NF模式的理由。

(2) 试把R分解成2NF模式集。

答:设关系模式R(ABCD),F是R上成立的FD集,F={AB→CD,A→D}。 ⑴ 试说明R不是2NF模式的理由。

⑵ 试把R分解成2NF模式集。

答:⑴ 从已知的函数依赖集F,可知R的候选键是AB。另外,由AB→CD可推出AB→D,再由A→D可知AB→D是部分(局部)函数依赖,因此R不是2NF模式。

⑵ 如果将R分解成{AD,ABC},则是2NF模式集。

8.设有关系模式R(职工编号,日期,日营业额,部门名,部门经理),该模式统计商店里每个职工的日营业额,以及职工所在的部门和经理信息。如果规定:每个职工每天只有一个营业额;每个职工只在一个部门工作;每个部门只有一个经理。试回答下列问题: (1) 根据上述规定,写出模式R的基本FD和候选键。

(2) 说明R不是2NF的理由,并把R分解成2NF模式集。 (3) 进而分解成3NF模式集。 解:

⑴ 基本的FD有三个:

(职工编号,日期)→ 日营业额 职工编号 → 部门名 部门名 → 部门经理 R的关键码为:(职工编号,日期)。 ⑵ R中有两个这样的FD:

(职工编号,日期)→(部门名,部门经理) 职工编号 →(部门名,部门经理)

可见前一个FD是局部依赖,所以R不是2NF模式。 R应分解Rl(职工编号,部门名,部门经理) R2(职工编号,日期,日营业额) 此处,Rl和R2都是2NF模式。 ⑶ R2已是3NF模式。

在R1中,存在两个FD:职工编号 → 部门名 部门名 → 部门经理

因此,“职工编号 → 部门经理”是一个传递依赖,Rl不是3NF模式。 R1应分解成R11(职工编号,部门名) R12(部门名,部门经理)

这样,ρ={R11,Rl2,R2}是一个3NF模式集。

9.设有关系模式R(运动员编号,比赛项目,成绩,比赛类别,比赛主管),如果规定:每个运动员每参加一个比赛项目,只有一个成绩;每个比赛项目只属于一个比赛类别;每个比赛类别只有一个比赛主管。试回答下列问题:

(1) 根据上述规定,写出模式R的基本FD和候选键。 (2) 说明R不是2NF的理由,并把R分解成2NF模式集。 (3) 进而分解成3NF模式集。

5

解:⑴ 基本的FD有3个:

(运动员编号,比赛项目)→ 成绩

比赛项目 → 比赛类别 比赛类别 → 比赛主管 R的关键码为(运动员编号,比赛项目)。 ⑵ R有两个这样的FD:

(运动员编号,比赛项目)→ (比赛类别,比赛主管) 比赛项目 → (比赛类别,比赛主管) 可见,前一个FD是部分(局部)函数依赖,所以R不是2NF模式。 如果把R分解成R1(比赛项目,比赛类别,比赛主管) R2(运动员编号,比赛项目,成绩) 这里,R1和R2都是2NF模式。 ⑶ R2已是3NF模式。

在R1中,存在两个FD:比赛项目 → 比赛类别 比赛类别 → 比赛主管

因此,“比赛项目 → 比赛主管”是一个传递依赖,R1不是3NF模式。 R1应分解为R11(比赛项目,比赛类别) R12(比赛类别,比赛主管) 这样,ρ={R11,R12,R2}是一个3NF模式集。

习题3

1.名词解释

数据库设计:是指对于给定的软、硬件环境,针对现实问题,设计一个较优的数据模型,建立相应的数据库结构和数据库应用系统。

数据流图:是从“数据”和“对数据的加工”两方面表达数据处理系统工作过程的一种图形表示法。具有直观、易于被用户和软件人员双方都能理解的一种表达系统功能的描述方式。

数据字典:数据字典提供了对数据库数据描述的集中管理,它的功能是存储和检索各种数据描述,如叙述性的数据定义等,并且为DBA提供有关的报告。对数据库设计来说,数据字典是进行详细的数据收集和数据分析所获得的主要成果。数据字典中通常包括数据项、数据结构、数据流、数据存储和处理过程五个部分。

弱实体:一个实体对于另一些实体(父实体)具有很强的依赖联系,而且该实体主键的部分或全部从其父实体中获得,则称该实体为弱实体。

概念结构设计:概念结构设计就是将需求分析得到的用户需求抽象为信息结构即概念模型的过程,是对信息世界进行建模,常用的概念模型是E-R模型。

逻辑结构设计:是将概念结构设计阶段所得到的概念模型转换为具体DBMS所能支持的数据模型(即逻辑结构),并对其进行优化。

物理结构设计:数据库最终是要存储在物理设备上的。为一个给定的逻辑数据模型选取一个最适合应用环境的物理结构的过程,就是数据库的物理设计。

2.什么是数据库设计目标?数据库设计的基本步骤有哪些?

6

答:数据库设计的主要目标有:最大限度地满足用户的应用功能需求、获得良好的数据库性能、对现实世界模拟的精确度要高、数据库设计应充分利用和发挥现有DBMS的功能和性能、符合软件工程设计要求。

数据库设计的基本步骤是:需求分析阶段、概念结构设计阶段、逻辑结构设计阶段、物理结构设计阶段、数据库实施阶段、数据库运行和维护阶段。

3.数据库设计的需求分析阶段是如何实现的?任务是什么?

答:需求分析阶段的工作由下面4步组成:分析用户活动,产生用户活动图;确定系统范围,产生系统范围图;分析用户活动所涉及的数据,产生数据流图;分析系统数据,产生数据字典。

需求分析阶段的任务是对系统的整个应用情况作全面的、详细的调查,确定企业组织的 目标,收集支持系统总的设计目标的基础数据和对这些数据的要求,确定用户的需求;并把这些要求写成用户和数据库设计者都能接受的文档。

4.概念设计的具体步骤是什么?

答:概念设计的主要步骤为:进行数据抽象、设计局部概念模式;将局部概念模式综合成全局概念模式;评审。

5.简述采用E-R方法的数据库概念设计过程。

答:利用ER方法进行数据库的概念设计,可分成三步进行:首先设计局部ER模式,然后把各局部ER模式综合成一个全局ER模式,最后对全局ER模式进行优化,得到最终的ER模式,即概念模式。

6.逻辑设计的目的是什么?试述逻辑设计过程的输入和输出环境。 答:逻辑设计的目的是把概念设计阶段设计好的基本ER图转换为与选用的具体机器上的DBMS所支持的数据模型相符合的逻辑结构(包括数据库模式和外模式)。

逻辑设计过程中的输入信息有:独立于DBMS的概念模式,即概念设计阶段产生的所有局部和全局概念模式;处理需求,即需求分析阶段产生的业务活动分析结果;约束条件,即完整性、一致性、安全性要求及响应时间要求等;DBMS特性,即特定的DBMS特性,即特定的DBMS所支持的模式、子模式和程序语法的形式规则。

逻辑设计过程输出的信息有:DBMS可处理的模式;子模式;应用程序设计指南;物理设计指南。

7.规范化理论对数据库设计有什么指导意义? 答:在概念设计阶段,已经把关系规范化的某些思想用作构造实体类型和联系类型的标准, 在逻辑设计阶段,仍然要使用关系规范化的理论来设计模式和评价模式。 规范化的目的是减少乃至消除关系模式中存在的各种异常,改善完整性,一致性和存储效率。

8.什么是数据库结构的物理设计?主要包含哪几方面的内容?

答:数据库结构的物理设计是指对一个给定的逻辑数据模型选取一个最适合应用环境的物理结构的过程, 所谓数据库的物理结构主要指数据库在物理设备上的存储结构和存取方法。物理设计的步骤为:

(1) 设计存储记录结构,包括记录的组成、数据项的类型和长度,以及逻辑记录到存储记录的映射;

(2) 确定数据存储安排;

(3) 设计访问方法,为存储在物理设备上的数据提供存储和检索的能力; (4) 进行完整性和安全性的分析、设计; (5) 程序设计。

9.数据库实施阶段主要做哪几件事情?

7

答:数据库实现阶段的主要工作有以下几点:建立实际数据库结构、试运行、装入数据。

10.数据库系统投入运行后,有哪些维护工作? 答:数据库系统投入运行后,主要维护工作有:

(1) 维护数据库的安全性与完整性控制及系统的转储和恢复; (2) 性能的监督、分析与改进; (3) 增加新功能;

(4) 发现错误,修改错误。

11.设某商业集团数据库中有三个实体集。一是“商店”实体集,属性有商店编号、商店名、地址等;二是“商品”实体集,属性有商品号、商品名、规格、单价等;三是“职工”实体集,属性有职工编号、姓名、性别、业绩等。

商店与商品间存在“销售”联系,每个商店可销售多种商品,每种商品也可放在多个商店销售,每个商店销售每一种商品,有月销售量;商店与职工间存在着“聘用”联系,每个商店有许多职工,每个职工只能在一个商店工作,商店聘用职工有聘期和月薪。

试画出ER图,并在图上注明属性、联系的类型。再转换成关系模式集,并指出每个关系模式的主键和外键。

解:ER图如下图所示。 商品号 商品名 规格 单价 商品 M

月销售量 销售

商店编号 N

商店 商店名

1 聘期 地址 聘用 月薪 N

职工

职工编号 姓名 性别 业绩

所转换成的关系:

商品(商品号,商品名,规格,单价) 商店(商店编号,商店名,地址) 销售(商店编号,商品号,月销售量)

职工(职工编号,姓名,性别,业绩,聘期,月薪,商店编号)

8