课程管理系统数据库设计及实现
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
大学课程设计报告
课程设计题目:“课程管理系统”数据库设计与实现
学院:
专业班级:
年级:
姓名:
学号:
完成时间:年月日成绩:
指导教师:
目录
第1章课程管理系统功能需求分析
第2章课程管理系统概念结构设计
2.1设计E-R图
2.2 E-R模型向关系模型的转换
第3章创建视图与索引,授予用户权限
3.1创建视图
3.2 创建索引
3.3 授予权限
正文
一、需求分析
1.近年来,随着各大高校的规模不断扩大,生源的急剧增加,有关学生的各种信息量也成倍增长。面对庞大的信息量,需要建立一个课程管理系统来提高管理质量,让老师减轻工作量,提高工作效率。建立课程管理系统就是为了实现信息的规范管理、科学统计与快速查询,从而减少管理方面的工作量。课程管理系统主要提供教师、学生的学籍管理、成绩管理与课程管理功能。
2.需求功能分析:
教师与学生的登录
学生学籍的添加、修改、删除、查询
课程管理的添加、修改、删除、查询
教师授课的安排
3.用户需求分析
用户的需求具体体现在各种信息的提供、保存、更新、查询方面,这就要求数据库机构能充分满足各种信息的输入与输出。收集基本数据、数据结构以及数据处理流程,组成一份详尽的数据字典,为后面的具体设计打下基础。针对课程管理系统的需求,通过对课程管理系统的设计与数据流程的分析,设计如下所示的数据项与数据存储表:
登录信息:包括用户号、密码、权限
学籍信息:包括用户号、姓名、性别、出生日期、班级、入学日期、家庭住址、电话
课程信息:包括课程号、课程名、类型、教师名
4.统的总体结构设计
该系统共有三个模块:登陆模块、学籍管理模块、课程信息模块。这几个模块同时还包括数据添加、数据修改、数据删除、数据查询等几个基本操作。
(1)登录模块在登录界面中教师与学生可登录。在登录界面中分别填入用户名、密码与身份,然后按确认键登录。如果填入信息有误则弹出错误信息的提示窗口,重新返回登陆窗口。如果填入信息正确则要根据登录信息表中登录者的权限(“0”或“1”)分别进入教师(“1”)或学生(“0”)管理系统主界面。
(2)学籍管理模块该模块主要完成学生基本信息的添加、修改、删除、查询等功能。根据登录时权限的判断,权限为“0”时,是学生进入该模块,只可对自己的学籍进行查询,添加、修改、删除功能不可用;权限为“1”时,教师进入该模块,此时可进行所有学生学籍的查询、添加、修改、删除,在此模块中定义了8个数据来进行学生的信息存储,如果修改某个记录,可单击修改按钮进行数据的编辑,此时界面数据内容与数据库内容将同时更新。
(4)课程管理模块该模块主要完成存储课程的所有信息的添加、修改、删除、查询等功能。根据登录时权限的判断,权限为“0”时,学生进入
该模块,只可进行课程查询,添加、修改、删除功能不可用;权限为“1”时,教师进入该模块,可进行查询、添加、修改、删除,在此模块中定义了6个数据来进行课程的信息存储,如果修改某一纪录,可单击修改单按钮进行课程记数据的编辑,此时界面数据内容与数据库内容将同时更新。
2、概念设计
数据字典
1
数据项名数据类型长度注明
学生学号字符型10 6位十进制数
学生姓名字符型8
年龄字符型16
籍贯字符型8 学生出生地
入学时间日期型
教室编号字符型10 以A,B,C,D开头,
教师姓名字符型8
教师电话字符型20
教师邮箱字符型30
课程管理系统数据库中的E-R图
3、逻辑设计
将上面的E-R图转化为如下关系模型,下划横线代表关系的主键:学生(学号,姓名,年龄,籍贯,入学时间,专业代码,班级代码,学院代码)
班级(班级代码,专业代码,班级名,学生数)
专业(专业代码,学院代码。专业名称)
学院(学院代码,学院名,学员人数)
教师(教工号,教师姓名,教师电话,教师邮箱)
从属(加工号,学院代码)
课程(课程代码,学院代码,课程名,人数,学分)
管理员(管理员代码,管理员姓名,管理员电话,管理员邮箱)教室(教室编号,所属校区,教学楼)
安排(课程代码,教工号,教室编号,管理员代码,上课时间)分配(学号,教室编号)
选择(学号,课程代码)
二、转化后的关系模型如图:
三、数据库实现
1、数据库视图的创建
1)创建一个学号为20105263的学生的查询视图;
Create view 学生信息(学生学号,所选课程名称,所在班级代号,老师姓名,上课教室)
as
select学生学号,课程名,班级代码,教师姓名,教室编号
from学生,课程,班级,教师,教室
where学生.班级代码=班级.班级代码and 学生.学院代码=学院. 学院代码2)创建一个教工号为5132的教师的查询视图;
Create view 教师信息(所教课程名称,所教班级代号,所属学院,上课教室)
as
select 课程名,班级代码,学院,教室编号
from 课程,班级,学院,教室,教师
where 教师.教工号=‘5132’;
3)创建一个管理员的查询视图
Create view 管理员视图(课程名称,老师姓名,学生姓名,教室编号)as
select 课程名,教师姓名,学生姓名,教室编号
from 课程,教师,学生,教室;