数据库表设计-学生课表设计

我想问一个数据库设计的问题。
就是我现在打算做一个大学课程表的增删改查的项目。核心的两个功能是:
1.增加功能。每个部门的人,可以记录自己部门成员的课表,记录的时候,是在一个课表中,每一个时间段选择一个一个选择自己的上课周。

img

(大致这样,每一个时间段都能选,一周七天,一天五节课)
2.查询功能。在一个课表中可以看到一个部门在一周中所有人的没课

img


情况。

修改和删除很常规。
问题:
看了几个类似项目都是记录课程的起始周和结束周,但是实际大学中,会有单双周这种课,所以结合实际就想改成用多选列表,然后就在数据库的课程表设计中出了问题,不知道如何设计周数与课程与学生之间的关系。
前提:
不需要具体课程名字、上课地点、这些,
只需要记录:
谁,在第几周,星期几,第几节次,有没有课,就好了。

不知道如何设计周数与课程与学生之间的关系。


学生和课程有关系。
课程和周数有关系 (这周有课, 那周没有课)

建两个表,一个表以学生和课程为主键,另一个表存课程信息,课程为主键,一个字段存储上课周数;需要加强联系的话,可以设置其中一个课程为外键