设有高校选课系统,需要对学校的系信息、教师信息、课程信息、学生信息、学生选课信息进行管理。已知系(DEPT)信息包括系编号(DeptNO)、系名称(DeptName);教师(1’eacher)信息包括教师号(1’NO)、教师名(TName);课程(Cour

admin2009-02-12  68

问题 设有高校选课系统,需要对学校的系信息、教师信息、课程信息、学生信息、学生选课信息进行管理。已知系(DEPT)信息包括系编号(DeptNO)、系名称(DeptName);教师(1’eacher)信息包括教师号(1’NO)、教师名(TName);课程(Course)信息包括课程号(CNO)、课程名(CName)、课程学分(Credit);学生(Student)信息包括学号(SNO)、学生姓名(SName)、学生性别(Sex)。
选课系统的管理规则如下:
i.一个系可聘用多名教师,一名教师只受聘于一个系;
ii.一个系可有多名学生,一名学生只属于一个系;
iii.一名教师可讲授多门课程,一门课程可由多名教师讲授;
iv.一名学生可选修多门课程,一门课程可被多个学生选修;
v.学生选修完课程后,可获得相应课程的成绩。
请针对以上描述,完成下列设计内容:
①构建选课系统的E—R图。(要求图中的实体集名用试卷中给出的英文名,联系名用联系所关联的实体集名的首字母,字母间用“一”或“一”连接,大小写不限)
②根据所构建的E—R图,设计满足3NF的关系模式,并标出每个关系模式的主码和外码。
(要求关系模式名同实体集名或联系名,属性名用试卷中给出的英文名,大小写不限)

选项

答案E-R图如下. ②设计3NF,如下: DEPT(DeptNO,DeptName)主码:DeptNO。无外码 Teacher(TNO,TName,DeptNO)主码TNO,外码DeptNO Student(SNO,SName,Sex,DeptNO)主码$NO,外码DeptNO Course(CNO,cName,Credit)主码CNO,无外码 T—C(TNO,CNO)主码(rI’N0,CNO),外码TNO,CNO s—c(SNO,CNO,成绩)主码(SNO,CNO),外码SNO,CNO

解析 ①建立相应的E—R图的过程如下:
a.确定实体类型。本问题有4个实体类型,即Teacher实体、Course实体、Student实体和DEPT实体。
b.确定联系类型。Teacher实体与Course实体之间是多对多联系,即T—c关系。Student实体与Course实体之间是多对多联系,即s—C关系。DEPT实体与Teacher实体之间是l对多联系,即D—T关系。DEPT实体与Student实体之间是l对多联系,即D—S关系。
c.把实体类型和联系类型组合成E—R图。
d.确定实体类型和联系类型的属性。
Teacher实体集属性:教师号(TNO)、教师名(TName)
Course实体集属性:课程号(CNO)、课程名(CName)、课程学分(Credit)
Student实体集属性:学号(SNO)、学生姓名(SName)、学生性别(Sex)
DEPT实体集属性:系编号(DeptNO)、系名称(DeptName)S—C联系有属性:成绩
②如果一个关系模式Ri是一个范式,且不存在非主属性传递依赖于主码,则Ri是一个三范式,记为3NF。
故选择:
DEPT(DeptNO,DeptName)主码:DeptNO,无外码
Teacher(TNO,TName,DeptNO)主码TNO,外码DeptNO
Student(SNO,SName,Sex,DeptNO)主码SNO,外码DeptNO
Course(CNO,CName。Credit)主码CNO,无外码
T—C(TNO,CNO)主码(’INO,CNO),外码TN0.CNO
s—C(SNO,CNO,成绩)主码(SNO,CNO),外码SNO,CNO
主键是能够唯一标识表中某一行的属性或属性组。
转载请注明原文地址:https://jikaoti.com/ti/K7E7FFFM
0

最新回复(0)