设某教学管理系统,其查询模块需要提供如下功能: Ⅰ.查询系信息,列出各系编号、系名和系办公电话; Ⅱ.查询某系教师的信息,列出教师号、教师名、工资和聘用日期; Ⅲ.查询某教师讲授的课程信息,列出课程号、课程名和学分; Ⅳ.查询讲授某门课程的教师信息,列出教

admin2019-07-07  30

问题 设某教学管理系统,其查询模块需要提供如下功能:
Ⅰ.查询系信息,列出各系编号、系名和系办公电话;
Ⅱ.查询某系教师的信息,列出教师号、教师名、工资和聘用日期;
Ⅲ.查询某教师讲授的课程信息,列出课程号、课程名和学分;
Ⅳ.查询讲授某门课程的教师信息,列出教师名和职称;
Ⅴ.查询某门课程的先修课程信息,列出先修课程号和先修课程名。
系统有如下业务规则:
Ⅰ.一个系可聘用多名教师,一名教师只能受聘于一个系;
Ⅱ.一名教师可讲授多门课程,一门课程可由多名教师讲授;
Ⅲ.一门课程可以有多门先修课程,也可以没有先修课程。
将ER图转换为满足3NF的关系模式,并说明每个关系模式的主码和外码。

选项

答案由于题目要求满足3NF范式,ER图向关系模式转换采用方法一,关系名采用实体名或联系名。本题中有两个一对多、一个多对多联系,因此在转换时一对多联系转换为独立的关系模式;模式的属性由联系本身的属性及两个实体的键构成;主键由多端实体的键组成。m:n(多对多)联系转换成新的独立的模式,模式的属性由联系本身的属性及两个实体的键构成,主键由两端实体的键组合而成。 系(系编号,系名,系办公室电话),主码:系编号;无外码 教师(教师号,教师名,职称,工资,聘用日期),主码:教师号;无外码 聘用(教师号,系编号),主码:教师号;外码:系编号 课程(课程号,课程名,学分),主码:课程号;无外码 讲授(教师号课程号),主码:教师号、课程号;外码:教师号、课程号 先修课程(课程号,先修课程号),主码:先修课程号;外码:课程号 因为转换过来的关系模式中,不存在非主属性对于码的部分函数和传递函数依赖,所有关系模式满足3NF要求,因此对转换的结果不需要优化。

解析 在将ER图向关系模式转换时规则如下:
①1:1(一对一)联系。
方法一:联系转换为独立的关系模式;模式的属性由联系本身的属性及两个实体的键构成;主键由两个实体中的任意一个键构成。
方法二:联系与一端的实体的关系模式合并,即将联系的属性加入到实体的关系模式内,主键不变。
②1:m(一对多)联系。
方法一:联系转换为独立的关系模式;模式的属性由联系本身的属性及两个实体的键构成;主键由m端实体的键组成。
方法二:与m端的实体的关系模式合并,即将联系的属性加入到实体的关系模式内,主键不变。
③m:n(多对多)联系转换成新的独立的模式,模式的属性由联系本身的属性及两个实体的键构成,主键由两端实体的键组合而成。
关系模式满足3NF,则必须满足关系模式中每一个非主属性既不部分依赖于码也不传递依赖于码,简而言之,第三范式就是属性不依赖于其他非主属性。
转载请注明原文地址:https://kaotiyun.com/show/SJlZ777K
0

最新回复(0)