4.3排课系统数据库设计
发布时间:2024-08-27
发布时间:2024-08-27
针对排课系统的数据库设计
4.3 系统数据库设计 4.3.1 系统数据表格设计
1、课程相关数据(表1)
(表1)
注:教室类别中的上课时间从11~75取值分别代表为周一1、2节至周七9、10节,也可以由具体其它的教室类别来进行扩充。 2、教师数据(表2)
(表2)
3、教室数据(表3)
针对排课系统的数据库设计
(表3)
注:教室类别中的上课时间从11~75取值分别代表为周一1、2节至周七9、
10节,也可以由具体其它的教室类别来进行扩充。 4、教室使用状态数据分析(表4)
(表4)
注:对教室使用情况进行标注,以便于在进行排课时不至于冲突。若教室被使用值为1,未被使用则值为0。
如上各表是系统数据库表格设计,基本上描述了系统中的各种数据及其结构,但是,没有对数据的数据存储进行较多的描述。 4.3.2 系统相关数据的实体及其属性
如下各图将系统中的所有实体的属性集合,表示如下:
针对排课系统的数据库设计
如上各图将系统中的各数据的实体分别以图表的形式列举出。 4.3.3 系统基本E-R图的形成 实体联系部分情况: 1、 2、
一个老师可以同时教授M门课,但一门课程能且只能有1个老师在教授; 一个老师上一门课程能且只能在1个教室,一个教室能且只能有1个老师在上课;
3、
一个时间点上可以同时有M个班级在上课,一个班级能且只能在1个时间点上上课。 系统的基本E-R图:
在形成E-R图的时,由于将各个实体联系到了一起,所以可能会产生命名上的冲突,结构上的冲突和属性上的冲突,在此不做具体介绍,在后面的具体实现
过程中,将具体分析和解决。
针对排课系统的数据库设计
4.3.4 将E-R图转化为关系模式 生成的关系表:
1
该表记录整个学院所有课程的相关信息,包括该课程的上课时间,也就是上课教室的时间段,并将课程号作为主键,教师代号、教室代号作为外键。
该关系中其它两个非主属性完全依赖于主键课程代号,也不存在传递依赖,同时满足于1NF,2NF,3NF三个规范。
2
教师表将整个学院所有老师的信息作记录,教师代号、所上课程作为主键,另外将上课时间作为外键。它也满足三范式的规范要求。 3
该表将记录整个学院所有教室的信息,其中实体完整性为教室代号为主键,上课时间作为外键,教室容纳人数,两个非主属性完全依赖于主键且不传递依赖于主码。