、一个描述学校的关系模式,包括属性学号,姓名,所在系,系主任,课程名,成绩。在该校中:一个系有若干学生,但一个学生只能在一个系;一个系只有一名主任;一个学生可以选修多门课程,每门课程有若干学生选修;每个学生所学的每门课程都有一个成绩。 (1)试分析该关系模式中的函数依赖,并指出关系模式的侯选码。 (2)请自行增加2个函数依赖关系,并给出分解后的关系模式,请写出分解理由。
时间: 2024-03-04 14:52:33 浏览: 204
(1) 该关系模式中的函数依赖如下:
学号 → 姓名,所在系
系 → 系主任
学号,课程名 → 成绩
其中,学号是关系模式的侯选码,因为它可以唯一确定一条记录。
(2) 增加的两个函数依赖关系如下:
系主任 → 系
课程名 → 学分
针对以上两个函数依赖,可以将原关系模式分解为以下三个关系模式:
R1(学号, 姓名, 所在系):由原关系模式的前两个属性组成,因为学号可以唯一确定一条记录,所以不需要包含系主任的信息。
R2(系, 系主任):由原关系模式的第三个属性组成,因为一个系只有一名主任。
R3(学号, 课程名, 成绩, 学分):由原关系模式的最后两个属性组成,因为学号和课程名可以唯一确定一条记录,同时包含了成绩和学分的信息。
分解理由是,原关系模式中包含了多个函数依赖关系,如果不进行分解,可能会导致冗余数据的出现,影响数据的一致性和完整性。通过分解后的多个关系模式,每个关系模式都只包含一组函数依赖关系,可以避免冗余数据的出现。
相关问题
某学校有若干系,每个系有若干学生,若干课程,每个学生选修若干课程,每门课有若干学生选修,每个学生选修每门课对应一个选修学期和成绩,某一门课可以为不同的系开设。要建立该校学生选修课程的数据库。 系部信息:系代号,系名,系主任姓名,电话 学生:学号,姓名,年龄,性别 课程:课程号,课程名 请完成如下设计: (1).试画出E—R图,并在图上注明属性及联系的类型; (2).将E—R图转换成关系模型; (3).指出每个关系模式的主码。
(1) E-R图如下:
![E-R图](https://i.ibb.co/vkVqH27/E-R.png)
(2) 关系模型如下:
系部信息(系代号, 系名, 系主任姓名, 电话)
学生(学号, 姓名, 年龄, 性别, 系代号)
课程(课程号, 课程名)
选课(学号, 课程号, 选修学期, 成绩)
(3) 主码:
系部信息:系代号
学生:学号
课程:课程号
选课:(学号, 课程号, 选修学期)
阅读全文