学生成绩信息管理系统
河南工程学院《数据库原理及应用》课程设计
成果报告
学生成绩管理系统设计与实现
学生学号: 学生姓名: 学 院: 专业班级: 专业课程: 《数据库原理及应用》 指导教师:
年 月 日
目录
第1章 系统设计目的 . ..................................................................................................................... 1 1.1、 课程设计目的 . .................................................................................................................... 1 1.2、 系统设计目的 . .................................................................................................................... 1 1.3、 综合目的 . ............................................................................................................................ 1 第2章 系统设计目的 . ..................................................................................................................... 2 2.1、 整体实现思路 . .................................................................................................................... 2 2.2、 界面及窗口实现 . ................................................................................................................ 2 2.3、 数据库的实现 . .................................................................................................................... 2 第3章 系统详细设计 . ..................................................................................................................... 3 3.1、 系统功能设计 . .................................................................................................................... 3 3.2、 功能模块设计 . .................................................................................................................... 3 3.3系统功能流程图 . ..................................................................................................................... 4 3.4数据库设计 . ............................................................................................................................. 5 第4章 系统调试运行 . ..................................................................................................................... 7 4.1、 学生用户登录 . .................................................................................................................... 7 4.2、学生信息管理系统 . .............................................................................................................. 8 4.3、查看学生个人信息 . .............................................................................................................. 9 4.4、查看成绩信息 . .................................................................................................................... 11 4.5、修改学生个人密码 . ............................................................................................................ 12 4.6、教师用户登录 . .................................................................................................................... 14 4.7、教师进入系统 . .................................................................................................................... 15 4.8、教师个人信息 . .................................................................................................................... 16 4.9、查询学生信息 . .................................................................................................................... 17 4.10、添加学生信息 . .................................................................................................................. 19 4.11、录入成绩 . .......................................................................................................................... 20 4.12、删除学生信息 . .................................................................................................................. 21 第5章 课程设计体会 . ................................................................................................................... 22 参考文献 . ......................................................................................................................................... 24
第1章 系统设计目的
1.1、 课程设计目的
通过实践使学生经历一个数据库系统开发的全过程并受到一次综合的训练,以便能较全面地理解、掌握和综合运用所学的知识去分析、解决实际问题。
1.2、 系统设计目的
在现今信息时代,生活速度的加快,使得人们越来越向信息化、数字化发展,管理信息系统(MIS )是一个由人、计算机等组成的能进行信息的收集、传递、储存、加工、维护和使用的系统,必然能代替过去大量、繁杂的手工操作。对于一所学校来说,如何利用计算机改变每次考试结束后老师们统计大量的学生成绩时的繁重任务?如何消除因时间紧所产生的统计结果错误百出?设计出学生成绩管理系统就是一个很好的解决方法。
开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面,实现了学生成绩数据库的创建及学生成绩的输入、浏览、维护和统计,使得系统具有功能强大,界面友好的特点。
1.3、 综合目的
本系统主要完成对学生信息的管理,包括添加、修改、删除,查询,打印信息以用户管理等六个方面。系统可以完成对各类信息的浏览、查询、添加、删除、修改等功能。系统的核心是添加、修改和删除三者之间的联系,每一个表的修改都将联动的影响其它的表,当完成添加或删除操作时系统会自动地完成学生信息的修改。查询功能也是系统的核心之一。此外,系统有完整的用户添加、删除和密码修改功能,并具备报表打印功能。
第2章 系统设计目的
2.1、 整体实现思路
不同用户通过登录界面进入系统,可以执行不同的操作。如以学生的身份进入系统可以对个人信息进行查询和修改密码等;当用户是教师的的身份进入系统,会转到不同的页面就可以录入成绩查询成绩等;管理员的权限包括添加、修改、删除,查询学生信息等等。
2.2、 界面及窗口实现
界面及窗口用VB 语言实现,VB 语言具有易于实现,简洁的优点,比较适合编写登录和功能窗口,因此选择通过VB 来实现这一部分。
2.3、 数据库的实现
数据库的实现采用本学期学习的T-SQL 语言来实现。先创建一个student 数据库,并在其中创建所需的各种表,包括学生表(Student)、成绩表(score )、课程表(course )、班级表(class )等
第3章 系统详细设计
3.1、 系统功能设计
学生信息管理网站基于用户验证登录的方式实现学生信息管理、课程信息管理、年终考核管理、班级管理及用户管理等功能。其功能结构如图:
图3.1系统功能结构图
3.2、 功能模块设计
学生信息管理网站主要包含用户登录、学生信息管理、课程信息管理、年终考核管理、系统管理等功能模块。
1、用户登陆
学生信息管理网站采用用户名及密码验证方式,进入学生信息管理网站前,用户必须在登录页面输入用户名及密码,只有验证通过的用户方可进入学生信息管理网站操作主页面。
2、学生信息管理
包含3个功能模块:学生个人信息的添加、学生信息的查询以及学生信息的修改与删除。
3、课程信息管理
包含4个功能模块:课程基本信息添加与删除处理、与学生信息结合实现学生选课处理、学生退选课程处理以及学生选课信息的查询处理。
4、系统信息维护模块
包括用户基本信息管理与班级信息的管理。其中,用户管理包括用户的添加、删除、密码修改;班级信息管理包括班级信息的添加、删除处理。
3.3系统功能流程图
3.4数据库设计 1、数据库设计概念
根据分析,可画出数据库的E-R 模型图:
图3.3 数据库E-R 图
2、数据库逻辑设计
根据系统功能设计的要求以及功能模块的划分,对学生信息管理网站可以列出以下数据项及数据结构:
学生个人基本信息:主要包括学生的学号、姓名、性别、出生日期以及学生所在的班级。
课程基本信息:主要包括编号及课程的名称。
学生选课信息:主要包括学生的学号及所选课程的编号。 学生考核信息:主要包括学生的学号及考核结果。
用户信息:包括用户的帐号及密码。 3、数据库物理设计
根据系统需求及逻辑结构设计,本系统基于SQL Server 2005数据库,建立如下数据库表。
说明:学生信息表,StuID 设为主键。
表3.1 学生信息表Student
说明:课程的基本情况,CID 设为主键。
表3.2课程信息表Course
说明:班级信息表,ClassName 、Majo 设为主键。
表3.3 班级信息表MajorInfo
说明:学生信息表,UserID 设为主键。
表3.4用户信息表UserInfo
第4章 系统调试运行
4.1、 学生用户登录
图4.1用户登录界面
实现代码如下:
If Trim(rst.Fields(1)) = Text2.Text Then If Option1.Value = True Then
If Option1.Caption = Trim(rst.Fields(2)) Then user_pro = "学生" user_id = Text1.Text main1.Show Me.Hide Else
MsgBox "权限错误!", vbOKOnly + vbExclamation End If Else Else
MsgBox "密码错误!", vbOKOnly + vbExclamation End If
Else
MsgBox "用户名错误!", vbOKOnly + vbExclamation End If End Sub
4.2、学生信息管理系统 用户名和密码正确进入系统
图4.2用户进入系统界面
实现代码如下: Private Sub geren_Click() jsgeren.Show End Sub
Private Sub liulan_Click() liulanxs.Show End Sub
Private Sub tianjia_Click() tianjiaxs.Show End Sub
Private Sub xh_del_Click() shanchuxs.Show
shanchuxs.Label2.Caption = "学号" End Sub
Private Sub xitong_Click() gonggao.Show End Sub
Private Sub xiugai_Click() xgmm.Show End Sub
Private Sub xm_del_Click() shanchuxs.Show
shanchuxs.Label2.Caption = "姓名" End Sub
4.3、查看学生个人信息
图4.3查看学生个人信息界面
实现代码如下:
Private Sub Command1_Click() main1.Show Me.Hide End Sub
Private Sub Form_Load()
Dim rst As New ADODB.Recordset Dim str As String
str = "select * from student_info where sno='" + user_id + "'" Set rst = chaxun(str) Text1.Text = rst.Fields(0) Text5.Text = rst.Fields(1)
Text4.Text = rst.Fields(2) Text3.Text = rst.Fields(3) Text6.Text = rst.Fields(4) End Sub
4.4、查看成绩信息
图4.3查看学生成绩信息界面
实现代码如下:
Private Sub Command1_Click() main1.Show Me.Hide End Sub
Private Sub Form_Load()
Dim rst As New ADODB.Recordset Dim str As String
str = "select * from student_cj where sno='" + user_id + "'"
Set rst = chaxun(str)
Text1.Text = rst.Fields(2) rst.MoveNext
Text4.Text = rst.Fields(2) rst.MoveNext
Text3.Text = rst.Fields(2) rst.MoveNext
Text2.Text = rst.Fields(2)
End Sub
4.5、修改学生个人密码
图4.4学生修改个人密码界面
图4.5学生设置新密码界面
图4.6密码修改完成
实现代码如下:
Dim rs As New ADODB.Recordset Private Sub Command1_Click() Dim str As String
str = "select * from student where user_id='" + user_id + "'" Set rs = chaxun(str)
If Trim(rs.Fields(1)) = Text1.Text Then Label1.Visible = False Label2.Visible = True Label3.Visible = True Text1.Visible = False Text2.Visible = True Text3.Visible = True
Command1.Visible = False Command2.Visible = True Else
MsgBox "密码输入错误!", vbOKOnly + vbExclamation End If End Sub
Private Sub Command2_Click() If Text2.Text = Text3.Text Then rs.Fields(1) = Text2.Text rs.Update
MsgBox "密码修改成功!", vbOKOnly + vbExclamation Me.Hide Else
MsgBox "两次密码输入不一致!", vbOKOnly + vbExclamation End If End Sub
Private Sub xiugai_Click()
End Sub
Private Sub Form_Load()
End Sub
4.6、教师用户登录
图4.7教师登录系统
实现代码如下:
If Option2.Caption = Trim(rst.Fields(2)) Then user_pro = "教师" user_id = Text1.Text main2.Show Me.Hide Else
MsgBox "权限错误!", vbOKOnly + vbExclamation End If End If
4.7、教师进入系统
图4.8教师进入系统
4.8、教师个人信息
图4.9教师个人信息
实现代码如下:
str = "select student_js.tno,tname,cname,ssex,sage from student_js,student_km,student_sk
where student_sk.cno=student_km.cno and student_sk.tno=student_js.tno and student_sk.tno='" + user_id + "'"
Set rst = chaxun(str) Text1.Text = rst.Fields(0) Text5.Text = rst.Fields(1) Text4.Text = rst.Fields(2) Text2.Text = rst.Fields(3) Text6.Text = rst.Fields(4
4.9、查询学生信息
图4.10查询学生信息
图4.11查询学生信息
实现代码如下:
MsgBox "已经是最后一条记录了!", vbOKOnly + vbExclamation rst.MoveLast End If display End Sub
Private Sub Command5_Click() rst.MovePrevious If rst.BOF Then
MsgBox "已经是第一条记录了!", vbOKOnly + vbExclamation rst.MoveFirst End If display End Sub
Private Sub Form_Load() Dim str As String
str = "select * from student_info" Set rst = chaxun(str)
4.10、添加学生信息
图4.11添加学生信息
实现代码如下:
str = "select * from student_info" Set rst = chaxun(str) rst.AddNew
rst.Fields(0) = Text1.Text rst.Fields(1) = Text2.Text rst.Fields(2) = Text4.Text rst.Fields(3) = Text3.Text rst.Update
MsgBox "添加成功!", vbOKOnly + vbExclamation
4.11、录入成绩
图4.12录入成绩
实现代码如下:
str = "select cno from student_sk where tno='" + user_id + "'" Set rst = chaxun(str) Text4.Text = rst.Fields(0) ts = rst.Fields(0)
str = "select cname from student_km where cno='" + Text4.Text + "'" Set rst = chaxun(str) Text4.Text = rst.Fields(0)
str = "select * from student_cj where cno='" + ts + "'" Set rst = chaxun(str) Text1.Text = rst.Fields(0)
str = "select sname from student_info where sno='" + Text1.Text + "'" Set rt = chaxun(str) display
4.12、删除学生信息
图4.13按姓名删除学生信息
图4.14按学号删除学生信息
实现代码如下:
If Label2.Caption = "姓名" Then
str = "select * from student_info where sname='" + Text1.Text + "'" Else
str = "select * from student_info where son='" + Text1.Text + "'" End If
Set rs = chaxun(str) If rs.EOF Then
MsgBox "没有要删除的信息", vbOKOnly + vbExclamation Else
While Not rs.EOF rs.Delete rs.MoveNext Wend
MsgBox "删除成功!", vbOKOnly + vbExclamation rs.Update End If
第5章 课程设计体会
在系统开发的这段时间里,我受到了指导老师的细心指导,导师严谨的指导态度和深厚的理论知识都让我受益匪浅,从她身上我学到了很多东西,无论是理论方面的还是实践方面的。借此我特别提出感谢。同时我还要感谢母校的老师们,谢谢他们为我们毕业生的毕业设计提供各种信息与帮助,同样要感谢的还有我们一起走过四年大学生活的同窗好友们,是你们时时刻刻的帮助才能让我顺利按期完成我的毕业设计。
除此之外,在整个毕业设计过程中,我能真的做到:遇到问题分析问题,想尽一切方法解决问题。以前对于一些语言也好,开发工具也罢,只是停留在浅显的理论上,借此次毕业设计,让我真体会到了作为一名软件工程师的快乐,当遇到一个问题时,我会一次又一次的尝试,通过查阅资料、上网搜索、向导师求助等。几经波折把问题解决后,那种大快人心、舒畅痛快的感觉,只有尝试了才能体会到。可能在毕业设计开始前,我依然觉得自己对计算机软件方面不感兴趣,但毕业设计进行到现在,我居然对计算机软件开发有了一定的兴趣,甚至认为,如果自己从事计算机软件开发方面的工作也是一件不错的事情。
总之,此次毕业设计过程中,我收获了很多,就算有时候为了完成任务很晚才睡,就算有时候为了查阅资料,翻遍了整个图书馆,但是这一切都是值得的,因为我的动手能力得到了提高,分析问题、解决问题的能力得到了提高,它为我美好的大学四年划上了一个完美的句号,也为我将来的就业之路打下了结实的基础。
最后再次感谢在整个毕业设计过程中给予我帮助的老师和同学们,谢谢你们!
参考文献
[1] 施伯乐,丁宝康,汪卫. 数据库系统教程. 北京:高等教育出版社,2007 [2] 赵松涛. 中文版SQL Server 2000应用及实例. 北京:人民邮电出版社,2002 [3] 屈喜龙,朱杰.ASP+SQL Server开发动态网站实例. 机械工业出版社,2006 [4] 闫静,钟斌. 动态网页基础与实例. 北京:机械工业出版社,2004
[5] 龚宗渝,王茜.Photoshop CS2平面设计. 北京:北京希望电子出版社,2006