自动排课系统——数据库大作业

自动排课系统——数据库大作业
自动排课系统——数据库大作业

自动排课系统

一.系统需求

1该“自动排课系统”只是对数据库应用技术的一个样本数据库的实例,重在对数据库一些方法的

熟悉与掌握,其中包括从数据库的概念模型到

ER图的绘制,再到数据库模式的建立(即为数

据库及其基本表的建立),而后数据的录入(在

此从略),最后完成一些简单的关系运算表达式

的表达和相关的Select 查询语句的使用。

2系统结构简述:

2.1本系统包括六个实体:课程,学生,教室,教

师,学院,班级

2.2实体之间的多对多联系:教学计划,选课

2.2.1一个学生可选多门课,一门课可被多个学

生选修。

2.2.2一门课可使用多个教室,一个教室可被多

门课占用。

2.3实体之间的一对多联系:教学,隶属,从属,

属于,开设

2.3.1一个学院有多个教师,一个教师只隶属于

一个学院。

2.3.2一个学院有多个班级,一个班级只隶属于

一个学院。

2.3.3一个学院可开设多门课程,一门课程只能

被一个学院开设。

2.3.4一个班级有多名学生,一个学生只隶属于

一个班级。

2.3.5一个老师可教多门课程,一门课程只能被

一个老师教。

实体之间的关系转换为其他三个表:教学(一对多),教学计划(多对多),选课(多对多)。

注:各个基本表中关键字已在关系模式中说明。3经过分析,得到自动排课系统的如下功能:

3.1部分属性插入时添加默认值。

3.1.1为选课表中属性是否重修创建并绑定默

认值’NO’。

3.1.2为教师表中属性是否可用创建并绑定默

认值’YES’。

3.2对教学计划表插入数据时检查数据是否合理。

3.2.1当插入课程人数多于教室容量的数据时,无法插入数据。

3.2.2当插入课程占用不可被占用的教室的数据时,无法插入数据。

3.3部分表添加唯一约束,使插入数据的数据值受到限制。

3.3.1教学计划表中,每一门课程在一天只能安排一次。

3.3.2教学表中,一门课程只能被一个老师教。

3.4数据检索

3.4.1学生查询所选某门课程的成绩。

3.4.2输入:学生学号,课程编号

3.4.3输出:课程名称,成绩

3.4.4教师查询选修所教课程的学生的信息。

3.4.5输入:教师编号

3.4.6输出:学生姓名,学生学号,学生性别,籍贯

3.4.7学生查询选修课程授课教师的信息。

3.4.8 输入:学生学号

3.4.9 输出:课程编号,教师姓名,教师编号,授课效果,从教时间 3.4.10 学生查询所有选修课程的平均分。 3.4.11 输入:学生学号

3.4.12 输出:选课科目数,平均分 3.4.13 教室查询占用教室课程的信息。 3.4.14 输入:教室编号

3.4.15 输出:教室编号,课程名称,课程编号,教师名称,教师编号, 3.5 数据插入

3.5.1 教室数据插入。 3.5.2 学院数据插入。

3.5.3 教学数据插入。 3.5.4 学生数据插入。 3.6 数据修改

3.6.1 教学计划数据修改:修改教学计划时,输入课程编号及所需修改的属性

值,完成对教学计划表的修改。

3.6.2 教师数据修改:修改教师数据时,输入教师编号及所需修改的属性值,

完成对教师表的修改。

3.6.3 班级数据修改:修改班级数据时,输入班级编号及所需修改的属性值,

完成对班级表的修改。

3.7 数据统计与查询

3.7.1 学生及其选课的所有信息 3.7.2 教师教授课程情况的所有信息 3.7.3 教室安排情况的所有信息 3.7.4 学院_班级_学生间联系的所有信息

二. 概念设计

经需求分析,抽象出以下E-R 模型。 1. 图1 课程实体

2. 学生实体(图2)

3. 教师实体(图3)

4. 教室实体(图4)

图4 教室实体

5. 学院实体(图5)

图3教师实体

教师

教师年龄

教师性别

教师编号

教师姓名

图2 学生实体

学生

出生日期

籍贯

学生性别

学生年龄

学生学号

学生姓名

图7全局E-R 图

5 学院实体

6. 班级实体(图6)

图6 班级实体

7. 全局E-R 图(图7)

三.逻辑设计

系统中的实体有:课程、教师、教室、学生、学院、班级

将实体类型转换为关系模式如下:

课程(课程名称,课程编号,课程类型,课程容量,学分,课时数,所属学院编号)教师(教师姓名,教师编号,教师年龄,教师性别,隶属学院编号)

教室(教室编号,教室容量,是否可用)

学生(学生姓名,学生学号,学生年龄,出生日期,学生性别,籍贯,所在班级编号)学院(学院名称,学院编号,联系电话,通讯地址)

班级(班级编号,人数,所属年级,班导师,所在学院编号)

系统中的联系有:教学计划(多对多)、教授(一对多)、选修(多对多)

将联系类型转换为关系模式如下:

教学计划(课程编号,教室编号,起始周数,周数,起始节数,节数,星期),主键为(课程编号,教室编号)

教学(课程编号,教师编号,从教时间,授课效果),主键为(课程编号,教师编号)选课(课程编号,学生学号,是否重修,成绩),主键为(课程编号,学生学号)

注:有下划线的是主键,有波浪线的是外键。

四.物理设计

根据以上关系模式构建数据表如下:

表1 课程表(course)结构

表2 教师表(teacher)结构

表3 教室表(room)结构

表4 学生表(student)结构

表5 学院表(school)结构

表6 班级表(class)结构

表7 教学计划表(eduplan)结构

相关主题
相关文档
最新文档