现在有如下的教学任务书
课程编号 课程名称 授课班级
01 计算机组成原理及汇编 083211-2
02 数据结构与算法分析 083211-2
03 数据结构 083221-3
如果直接转换为关系模型的话,则如下【课程安排表】
课程编号 班级
01 083211
01 083212
... ...
可以看到冗余很多
所以根据学校实际是采用教学班(把几个班合起来)来安排
添加一个关系【教学班表】
教学班号 班级
083211-2 083211
083211-2 083212
... ...【课程安排表】
课程编号 教学班号
01 083211-2
02 083211-2
03 083221-3可是【教学班表】和【课程安排表】之间的关系是多对多的,实在想不出该如何转换,请教各位高手,在线等,谢谢!!!!!
课程编号 课程名称 授课班级
01 计算机组成原理及汇编 083211-2
02 数据结构与算法分析 083211-2
03 数据结构 083221-3
如果直接转换为关系模型的话,则如下【课程安排表】
课程编号 班级
01 083211
01 083212
... ...
可以看到冗余很多
所以根据学校实际是采用教学班(把几个班合起来)来安排
添加一个关系【教学班表】
教学班号 班级
083211-2 083211
083211-2 083212
... ...【课程安排表】
课程编号 教学班号
01 083211-2
02 083211-2
03 083221-3可是【教学班表】和【课程安排表】之间的关系是多对多的,实在想不出该如何转换,请教各位高手,在线等,谢谢!!!!!
课程编号 课程名称
【教学班表】
教学班号
【课程安排表】
课程编号 教学班号
...
还可以添加:
【教师表 】
教师编号 教师名称
【教师授课表 】
教师编号 课程编号
...等等
对象单独设表,
对象之间的关系,单独设表,
不要混乱
教学班号 班级
083211-2 083211
083211-2 083212
这不也是一种“冗余” 吗? 并且增加了维护量和复杂度。
这确实是一种冗余,但是从实际数据输入的角度出发,在输入数据库时,083211-2班的课表就不能输入两次了
【课程安排表】是一个关系,
还缺个对象。
添加一个【课程表】不久ok吗?
课程编号 课程名称
01 计算机组成原理及汇编
02 数据结构与算法分析
03 数据结构 【教学班表】
教学班号 班级
083211-2 083211
083211-2 083212
... ... 【课程安排表】
课程编号 教学班号
01 083211-2
02 083211-2
03 083221-3
这里【教学班表】和【课程安排表】之间的关系是多对多的
教学班号 班级
083211-2 083211
083211-2 083212
... ...