数据库课后习题参考答案(3)

2018-11-30 19:44

答:CREATE VIEW V2

AS

SELECT S.Sno, Sname, Cname, Grade

FROM Student S JOIN SC ON S.Sno = SC.Sno

JOIN Course C ON C.Cno = SC.Cno

(3)统计每个学生的选课门数的视图,要求列出学生学号和选课门数。 答: CREATE VIEW V3

AS

SELECT Sno, Count(*) AS total FROM SC GROUP BY Sno

(4)统计每个学生的修课总学分的视图,要求列出学生学号和总学分(说明:考试成绩大于等于60才可获得此门课程的学分)。 答: CREATE VIEW V4

AS

SELECT Sno, SUM(Ccredit) sum_credit

FROM SC JOIN Course C ON C.Cno = SC.Cno

WHERE Grade >= 60 GROUP BY Sno

23.利用第22题建立的视图,完成如下查询:

(1)查询考试成绩大于等于90分的学生的姓名、课程名和成绩。 答:SELECT Sname, Cname, Grade FROM V2 WHERE Grade >= 90

(2)查询选课门数超过3门的学生的学号和选课门数。 答:SELECT Sno, total FROM V3 WHERE total > 3

(3)查询计算机系选课门数超过3门的学生的姓名和选课门数。 答:SELECT Sname, total FROM V3 JOIN Student S on S.Sno = V3.Sno

WHERE total > 3 and Sdept = '计算机系'

(4)查询修课总学分超过10分的学生的学号、姓名、所在系和修课总学分。 答:SELECT S.Sno, Sname, Sdept, sum_credit

FROM Student S JOIN V4 ON S.Sno = V4.Sno WHERE sum_credit > 10

(5)查询年龄大于等于20岁的学生中,修课总学分超过10分的学生的姓名、年龄、所在系和修课总学分。

答:SELECT Sname, Sage, Sdept, sum_credit

FROM Student S JOIN V4 ON S.Sno = V4.Sno WHERE sum_credit > 10 and Sage >= 20

24.修改22题(4)定义的视图,使其查询每个学生的学号、姓名、所在系、所选全部课程

11

的总学分以及总的选课门数。 答:CREATE VIEW V4_1

AS

SELECT Sno, SUM(Ccredit) sum_credit, COUNT(*) Total FROM SC JOIN Course C ON C.Cno = SC.Cno

GROUP BY Sno

ALTER VIEW V4 AS

SELECT S.Sno, Sname, Sdept, sum_credit, Total

FROM Student S JOIN V4_1 ON S.Sno = V4_1.Sno

12

第 5 章 关系数据库规范化理论

1.关系规范化中的操作异常有哪些?它是由什么引起的?解决的办法是什么?

答:关系规范化中的操作异常有插入异常、更新异常和删除异常,这些异常是由于关系中存

在不好的函数依赖关系引起的。消除不良函数依赖的办法是进行模式分解,即将一个关系模式分解为多个关系模式。

2.第一范式、第二范式和第三范式的关系的定义是什么?

答:不包含非原子项属性的关系就是第一范式的关系;对于第一范式的关系,如果此关系中

的每个非主属性都完全函数依赖于主键,则此关系属于第二范式;对于第二范式的关系,如果所有的非主属性都不传递依赖于主键,则此关系就是第三范式的。

3.什么是部分依赖?什么是传递依赖?请举例说明。

答:部分依赖关系是指某个属性只由构成主键的部分列决定,而和另一些列无关。例如对关

系:学生选课(学号,姓名,课程号,成绩),此关系的主键是(学号,课程号),而“姓名”列只由“学号”决定,与“课程号”无关,这就是部分依赖关系。 传递依赖指的是某个非主键属性是由另一个非主键属性决定的,而这个非主键属性再由

主键决定。例如对关系:学生(学号、姓名、所在系,系主任),此关系的主键为(学号),而“系主任”由“所在系”决定,“所在系”又由“学号”决定,因此“系主任”对“学号”是传递依赖关系。

4.第三范式的表是否一定不包含部分依赖关系? 答:是的。 5.对于主键只由一个属性组成的关系,如果它是第一范式关系,则它是否一定也是第二范式关系? 答:是的。因为如果一个关系的主键只由一个属性组成,则此关系中一定不会存在部分依赖

关系。

6.设有关系模式:学生修课管理(学号,姓名,所在系,性别,课程号,课程名,学分,成绩)。设一名学生可以选修多门课程,一门课程可以被多名学生选修。一名学生有唯一的所在系,每门课程有唯一的课程名和学分。请指出此关系模式的候选键,判断此关系模式是第几范式的;若不是第三范式的,请将其规范化为第三范式关系模式,并指出分解后的每个关系模式的主键和外键。

答:候选键为:(学号,课程号),它也是此关系模式的主键。由于存在函数依赖:

学号 → 姓名,课程号 → 课程名 因此,存在非主属性对主键的部分函数依赖关系,因此它不是第二范式的表。分解如下: 学生表(学号,姓名,所在系,性别),主键为“学号”,已属于第三范式。 课程表(课程号,课程名,学分),主键为“课程号”,已属于第三范式。 选课表(学号,课程号,成绩),主键为(学号,课程号),已属于第三范式

7.设有关系模式:学生表(学号,姓名,所在系,班号,班主任,系主任),其语义为:一名学生只在一个系的一个班学习,一个系只有一名系主任,一个班只有一名班主任,一个系可以有多个班。请指出此关系模式的候选键,判断此关系模式是第几范式的;若不是第三范

13

式的,请将其规范化为第三范式关系模式,并指出分解后的每个关系模式的主键和外键。 答:候选键为:学号,它也是此关系模式的主键。

由于不存在非主键属性对主键的部分依赖关系,因此,此关系模式属于第二范式的,但由于存在如下函数依赖:

学号 → 班号, 班号 → 班主任, 因此,存在非主键属性对码的传递依赖关系,同样以及

学号 → 所在系,所在系 → 系主任,因此,此关系模式不是第三范式的。对其分解后的结果为: 学生基本表(学号,姓名,所在系,班号),主键为“学号”,“班号”为引用班级表表的“班号”的外键,“所在系” 为引用系表表的“系名”的外键。 班级表(班号,班主任),主键为“班号”。 系表(系名,系主任),主键为“系名”。

8.设有关系模式:授课表(课程号,课程名,学分,授课教师号,教师名,授课时数),其语义为:一门课程(由课程号决定)有确定的课程名和学分,每名教师(由教师号决定)有确定的教师名,每门课程可以由多名教师讲授,每名教师也可以讲授多门课程,每名教师对每门课程有确定的授课时数。指出此关系模式的候选键,判断此关系模式属于第几范式;若不属于第三范式,请将其规范化为第三范式关系模式,并指出分解后的每个关系模式的主键和外键。

答:此关系模式的候选键为(课程号,授课教师号),它们也是主键。由于存在函数依赖:

课程号 → 课程名,授课教师号 → 教师名 因此,存在非主属性对主键的部分函数依赖关系,因此它不是第二范式的表。分解如下: 课程表(课程号,课程名,学分),主键为“课程号”,已属于第三范式。 教师表(教师号,教师名),主键为“教师号”,已属于第三范式。 授课表(课程号,授课教师号,授课时数),主键为(课程号,教师号),已属于第三范式。

14

第6章 数据库设计

1.试说明数据库设计的特点。

答:数据库设计是和用户的业务需求紧密相关的,因此它具有如下特点:

? 综合性。数据库设计涉及的面很广,它需要包含计算机专业知识及业务系统专业知

识;同时它还要解决技术及非技术两方面的问题。 (1) 静态结构设计与动态行为设计是分离的。静态结构设计是指数据库的模式结构设

计,包括概念结构、逻辑结构和存储结构;动态行为设计是指应用程序设计,包括功能组织、流程控制等。数据库设计的主要精力首先是放在数据结构的设计上。

2.简述数据库的设计过程。

答:数据库设计一般包含6个阶段: 需求分析,概念结构设计,逻辑结构设计,物理设计,

数据库实施以及数据库运行和维护。

3.数据库结构设计包含哪几个过程?

答:数据库结构设计包括设计数据库的概念结构、逻辑结构和存储结构。

4.需求分析中发现事实的方法有哪些?

答:常用的发现事实的方法有检查文档、面谈、观察业务的运转、研究和问卷调查等。

5.概念结构应该具有哪些特点? 答:概念结构应具备如下特点:

? 有丰富的语义表达能力。 ? 易于交流和理解。 ? 易于更改。

? 易于向各种数据模型转换,易于导出与DBMS有关的逻辑模型。

6.概念结构设计的策略是什么?

答:概念结构设计的策略主要有:自底向上、自顶向下、由里向外、混合策略。

7.什么是数据库的逻辑结构设计?简述其设计步骤。

答:逻辑结构设计的任务是把概念结构设计阶段设计好的基本E-R模型转换为具体的数据

库管理系统支持的数据模型,也就是导出特定的DBMS可以处理的数据库逻辑结构。它一般包含两个步骤:第一是:将概念模型转换为某种组织层数据模型;第二是:对数据模型进行优化。

8.把E-R模型转换为关系模式的转换规则有哪些? 答:一般规则为:

(1)一个1∶1联系可以转换为一个独立的关系模式,也可以与任意一端所对应的关系模式

合并。如果可以转换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属性均转换为此关系模式的属性,每个实体的码均是该关系模式的候选键。如果是与联系的任意一端实体所对应的关系模式合并,则需要在该关系模式的属性中加入另一个实体的码和联系本身的属性。 (2)一个1∶n联系可以转换为一个独立的关系模式,也可以与n端所对应的关系模式合并。

15


数据库课后习题参考答案(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:循环流化床锅炉及其附属设备技术协议

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: