我正在尝试创建一个数据库来存储有关学校的信息。
我需要存储学校的每个部门。每个部门都有一个教师名单。每个老师都有一个班级列表,每个班级都有一个学生列表。
部门名称将是唯一的。但是,教师可能跨部门。另一件需要注意的事情是,如果老师A
教一门名为“数学”的课程,而老师B
也教一门名为“数学”的课程,那么这些在数据库中应该是不同的实体(我认为)。例如,我可能想要获取仅与“老师 A”一起参加“数学”课程的学生列表。
到目前为止,我有这个:
部门(部门标识,部门名称)
教师(教师身份,教师姓名);
Department_and_teachers( department_and_teachers_id ,department_id(FK),teacher_id(FK))
学生(学生ID,学生姓名)
我认为哪个是好的数据库设计?但是,它不包含有关“类”的任何信息,我不确定更改架构的最佳方法是什么。对于每个部门和教师组合,我需要添加所教授的课程列表。做这样的事情是否合理:
编辑- 基于收到的答案的新建议