学号
《数据库系统概论》
课程设计报告
题 目 : 学生选课管理信息系统
专 业 :
班 级 :
姓 名 :
指导教师:
成 绩 :
计算机学院
2017 年 12 月 8 日
目录
1 设计内容及要求.....................................................................................................................1
1.1 课程设计选题..................................................................................................................1
1.2 项目背景..........................................................................................................................1
1.3 课设报告编写目的..........................................................................................................1
1.4 课设报告的组织..............................................................................................................2
1.5 系统需求分析..................................................................................................................2
2 概要设计.................................................................................................................................2
2.1 系统管理员......................................................................................................................2
2.2 学生用户..........................................................................................................................2
3.1 概念结构设计..................................................................................................................3
3.2 分 E-R 图.......................................................................................................................... 3
3.3 局部 E-R 图..................................................................................................................... 4
3.4 合并 E-R 图..................................................................................................................... 5
3.5 逻辑结构设计..................................................................................................................5
3.6 创建表..............................................................................................................................7
3.7 建立视图..........................................................................................................................9
3.8 存储过程的建立............................................................................................................11
3.9 源代码............................................................................................................................12
4 设计结果与分析...................................................................................................................16
4.1 功能模块界面分析........................................................................................................16
4.2 管理学生、课程、教室信息界面................................................................................17
4.3 用户登录测试................................................................................................................18
4.4 管理教师课程信息........................................................................................................20
4.5 学生选、退课测试........................................................................................................20
4.6 分析................................................................................................................................21
5.参考文献...............................................................................................................................21
计算机学院《学生选课管理信息系统》课程设计
1 设计内容及要求
1.1 课程设计选题
考虑到学生选课这个时间与我们大学生活是如此贴近,兵器额在我们平时选
课时也经常出现一些不足,所以我选择“学生选课管理系统”这个课题。除了他
比较贴近生活之外,这个项目也会让我对数据库有更新一步的认识与巩固,对身
边的各种选课系统有一个更直观的了解。
1.2 项目背景
随着科技的发展,高科技技术的不断开发,数据的处理在我们的生活中尤为
重要。教育的不断改革和素质教育的不断加强,学分制的实施,选修课在一个学
生的培养计划中的比重越来越大。
现在我们选课以及成绩查询都是在网上进行的,这个对于学生来说更加的自
主、便捷。但是由于一般高校的学生比较多,因此就带来的诸多如信息管理等问
题。鉴于需要将学生信息、选课信息等信息数字化以便于维护管理,我们便想到
了利用数据库更加准确的解决此类问题。所以我决定设计一个适用于高校学生选
课系统一共参考并且更进一步的了解高校选课的流程以及数据的保存。
1.3 课设报告编写目的
无纸化办公的模式现在已经普遍存在,信息自动化处理以及网络式信息交互
方式已经普及并且被人们广泛应用,计算机管理学生信息在各大高校都在积极进
行,也是高校管理工作的重要内容之一。网上选课与传统的选课方式相比更加的
智能便捷并且节约资源,也增加了学生学习过程中的自主权。
学生选课系统无疑是一个比较现代化的教学技术,并且受到人们的重视,是
学校管理中不可获取额的一部分。有了学生选课可系统不仅方便了学生、教师,
更重要的是学校在管理数据方面会更加的方便以及准确。学生选课系统使选课管
理工作规范化、系统化、程序化,避免数据丢失,提高信息处理的速度,能够准
确及时的查询及更改学生的选课情况。编写课设报告的目的就在于将学生选课管
理系统的设计与实现以及管理维护等工作更加有条理的呈现出来,对开发设计学
1
计算机学院《学生选课管理信息系统》课程设计
生选课系统的过程进行记录并且概括,帮助更好的理解、操作、运用学生选课系
统。
1.4 课设报告的组织
课设报告从学生选课系统的需求分析到数据库的设计,包括逻辑设计、物理
设计等,在倒最后的实现与维护一一呈现出来,包括最初的设计理念,数据库具
体觉得建立以及数据的输入、管理及更新。包括实现学生选课功能、教师录入成
绩功能,管理员对数据库信息的增删改查功能一应俱全。
1.5 系统需求分析
该系统应该能管理学校的教师信息、学生信息、专业信息、学校开设的所有
课程信息、学生选修课程的信息等。选课系统主要满足三类用户的要求,这三类
用户分别是教务处的系统管理员、教师和学生。他们所具有的操作权限以及操作
内容是不同的。具体的需求分析如下:
2 概要设计
2.1 系统管理员
1) 维护学生的个人基本信息,实现对学生个人信息的增、删、改、查,学生信
息包括学号、姓名、性别、年龄、入学时间、系别、专业、密码。
2) 维护教师的个人基本信息,实现对教师个人信息的增、删、改、查,教师信
息包括教师工号、姓名、性别、密码。
3) 维护课程的个人基本信息,实现对课程个人信息的增、删、改、查,课程信
息包括课程号、课程名、学分。
2.2 学生用户
1) 查询和修改个人信息。
2
计算机学院《学生选课管理信息系统》课程设计
2) 进行选课操作
3) 学生可以查看自己所选课程信息及以前所选课程的成绩信息。
2.3 教师用户
1) 查询和修改个人信息
2) 课程结束后,登记成绩
3) 教师可查看自己的教学安排。
3 设计过程或 程序代码
3.1 概念结构设计
3.2 分E-R 图
根据需求分析,设计出“学生选课系统”的 E-R 图,该 E-R 图包括四个实
体:学生信息实体、教师信息实体、管理员信息实体、课程信息实体,还有选课
信息 E-R 图和授课信息 E-R 图。
各个实体的分 E-R 图分别如下图所示:
管理员登录实体图
学生信息实体图
用户名
密码
用户登录
图 1
年龄
姓名
学号
系别
学生信息
入学时间
专业
密码
教师信息实体图
性别
图 2
3
计算机学院《学生选课管理信息系统》课程设计
姓名
密码
性别
工号
教师信息
图 3
课程信息实体图
课程号
课程名
学分
课程信息
图 4
选课信息实体图
学号
课程号
学生成绩
授课信息实体图
选课信息
图 5
学时
教师工号
课程号
授课信息
图 6
3.3 局部 E-R 图
学生课程关系 E-R 图
课程
m
教师课程关系 E-R 图
教师
1
成绩
选修
图 7
课时
教授
4
n
n
学生
课程
计算机学院《学生选课管理信息系统》课程设计
教师学生关系 E-R 图
1
教师
管理员学生关系 E-R 图
管理员
m
3.4 合并 E-R 图
图 8
学分
教授
图 9
管理
图 10
n
学生
n
学生
本系统的数据库实体主要有“学生”、“教师”、“课程”、“管理员”等。
其中“教师”与“课程”存在“开设”联系,并且一个教师可以开设 N 门课程,
即“教师”与“课程”之间是一对多的关系。同样“学生”与“成绩”也存在一
对多的关系。一个学生可以学习 N 门课程,一门课程可以有 M 个学生学习,即“学
生”与“课程”之间是多对多的关系。同样“学生”与“成绩”之间也是多对多
的关系。整个数据库可以用一个 E-R 图表示
总的 ER 图
n
1
管理
1
管理员
管理
1
管理
学生
教授
教师
开设
n
1
n
课程
n
n
图 11
m
选
课
n
3.5 逻辑结构设计
根据上节 E-R 图可以将系统中的概念模型转换为具体的表(即关系)结
5
计算机学院《学生选课管理信息系统》课程设计
构。
本系统共设计 6 个关系,详细信息如下所示:
学生(学号、姓名、性别、年龄、入学时间、系别、专业、密码)
教师(教师工号、姓名、性别、密码)
管理员(管理员工号 密码)
课程(课程号、课程名、学分)
选课(学号、课程号、成绩)
授课(教师工号、课程号、课时)
为方便,根据上述文字描述,用英文简写为表和列取名,确定列的数据类
型及必要的约束规则,给出如下所示数据库表的基本结构及说明:
用户登录信息表 adm
列名
Username
Userpassword
学生信息表 student
数据类型
Char(20)
Char(20)
列名
Sno
Sname
Ssex
Sage
Senttime
Smajor
Ssdept
Spass
课程信息表 course
数据类型
Char(20)
Char(20)
Char(20)
Int
Datetime
Char(20)
Char(20)
Char(20)
表 1:Admin
是否为空
Notnull(主键)
notnull
表 2:student
是否为空
Notnull(主键)
notnull
null
null
null
null
null
null
列名
Cno
Cname
Ccredt
数据类型
Char(20)
Char(20)
float
表 3:course
是否为空
Notnull(主键)
notnull
null
说明
用户名
密码
说明
学号
姓名
性别
年龄
入学时间
专业
系别
密码
说明
课程号
课程名
学分
选课信息表 sc
表 4:sc
列名
数据类型
是否空
说明
6