为学校中学生选课管理这个现实问题进行数据库模式设计。根据调查分析,确定它的属性集合为:U={S,C,

10 查阅

为学校中学生选课管理这个现实问题进行数据库模式设计。根据调查分析,确定它的属性集合为:

U={S,C,SNAME,CNAME,TEACHER,GRADE,SD}

下面给出两种确定的模式设计方案:

方案一:只有一个关系模式:

R(S,C,SNAME,CNAME,TEACHER,GRADE,S@D)@方案二:如果根据属性之间存在的联系或相关性,建立如下三个关系:

S(S,SNAME,S@D)@,C(C,CNAME,TEACHER),SC(S,C,GRADE)

1.试分析这两种模式设计方案各自的优缺点。

2.通常情况下你认为哪种方案更“好”些?请说明理由

参考答案:

1.数据存在大量冗余。例如:(至少给出一项)S#SNAMESD要重复“每个学生选修的课程数”C#CNAMETEACHER要重复“学生选修这门课的人数”2、更新异常。由于数据存在大量冗余容易引起更新异常。例如当更新某门课程的教师时由于数据存在大量冗余可能造成与这门课程有关的元组中一部分元组的TEACHER值被更新而另一部分元组的TEACHER值未被更新。3、插入异常。显然这个关系的主键是S#、C#。由于主键属性值不能为空当登记学生信息时由于该学生未选课C#未确定该学生的其他信息无法登入这不是我们的意愿。4、

计算机四级