学生成绩管理系统.docx
- 文档编号:28179220
- 上传时间:2023-07-09
- 格式:DOCX
- 页数:75
- 大小:581.95KB
学生成绩管理系统.docx
《学生成绩管理系统.docx》由会员分享,可在线阅读,更多相关《学生成绩管理系统.docx(75页珍藏版)》请在冰豆网上搜索。
学生成绩管理系统
数据库原理课程设计报告
学生成绩管理系统设计
专业
计算机科学与技术
学生姓名
周阳
班级
D计算机131
学号
1320704130
指导教师
李萍
完成日期
2015年7月10日
信息学院
一、成绩管理系统的背景分析
当今时代是飞速发展的信息时代,在各行各业中离不开信息处理,这正是计算机被广泛应用于信息管理系统的环境。
计算机的最大好处在于利用它能够进行信息管理。
使用计算机进行信息控制,不仅提高了工作效率,而且大大的提高了其安全性。
尤其对于复杂的信息管理,计算机能够充分发挥它的优越性。
管理信息系统是进行信息的采集、存储、加工、维护和使用的系统,它是随着管理科学和技术科学的发展而形成的。
学生成绩管理系统是一个教育单位不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要,所以学生成绩管理系统应该能够为用户提供充足的信息和快捷的查询手段,对学生来说可以轻松的查阅自己在校的成绩以及信息等。
但是一直以来人们都是靠传统人工的方式管理学生成绩,这种管理方式存在着许多缺点,如:
效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。
随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它进入人类社会的各个领域并发挥着越来越重要的作用。
作为计算机应用的一部分,使用计算机对学生成绩信息进行管理,有着手工管理所无法比拟的优点.例如:
检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。
这些优点能够极大地提高学生成绩管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件。
因此,开发这样的一套成绩管理系统成为很有必要的事情。
学生成绩管理系统提供了强大的学生成绩管理管理功能,方便系统管理员对学生成绩等信息的添加、修改、删除、查询、留言等操作,同时一样的方面学生对自己各科成绩查询,学习的交流。
二、系统运行环境
2.1、MicrosoftSQLServer2008
MicrosoftSQLServer2008支持WinNT、Win9X、Win2000、WinXP。
而且MicrosoftSQLServer2008ExpressEdition(SQLServerExpress)是基于MicrosoftSQLServer2005的数据库平台,主要的特征是提供了易于使用强大的功能和MicrosoftSQLServer2008的整合SQLServerExpress在提供了服务器端广泛的功能以外,还同时提供强健的客户端数据库。
MicrosoftSQLServer2008是一个全面的数据库平台,使用集成的商业智能(BI)工具提供了企业级的数据管理。
MicrosoftSQLServer2008数据库引擎为关系型数据和结构化数据提供了更安全可靠的存储功能,使您可以构建和管理用于业务的高可用和高性能的数据应用程序。
MicrosoftSQLServer2008数据引擎是该企业数据管理解决方案的核心。
此外MicrosoftSQLServer2008结合了分析、报表、集成和通知功能。
这使您的企业可以构建和部署经济有效的BI解决方案,帮助您的团对通过积分卡、Dashboard、Webservices和移动设备将数据应用推向业务的各个领域。
与MicrosoftVisualStudio、MicrosoftOfficeSystem以及新的开发工具包(包括BusinessIntelligenceDevelopmentStudio)的紧密集成使MicrosoftSQLServer2008与众不同。
无论您是开发人员、数据库管理员、信息工作者还是决策者,MicrosoftSQLServer2008都可以为您提供创新的解决方案,帮助您从数据中更多地获益。
2.2、eclipse
Eclipse是一个开放源代码的、基于Java的可扩展开发平台。
就其本身而言,它只是一个框架和一组服务,用于通过插件组建构建开发环境。
幸运的是,Eclipse附带了一个标准的插件集,包括Java开发工具(JavaDevelopmengKit,JDK)。
虽然大多数用户很乐于将Eclipse当做Java集成开发环境(IDE)来使用,但Eclipse的目标却不仅限于此。
Eclipse还包括插件开发环境(Plug-inDevelopmentEnvironment,PDE),这个组件主要针对希望扩展Eclipse的软件开发人员,因为它允许他们构建与Eclipse环境无缝集成的工具。
由于Eclipse中的每样东西都是插件,对于给Eclipse提供插件,以及给用户提供一致和统一的集成开发环境而言,所有工具开发人员都具有同等的发挥场所。
这种平等和一致性并不仅限于JAVA开发工具。
尽管Eclipse是使用Java语言开发的,但它的用途并不限于Java语言;例如,支持诸如C/C++、COBOL、PHP、Android等编程语言的插件已经可用,或预计将会推出。
Eclipse框架还可用来作为与软件开发无关的其他应用程序类型的基础,比如内容管理系统。
基于Eclipse的应用程序的一个突出例子是IBMRationalSoftwareArchitect,它构成了IBMJava开发工具系列的基础。
2.3、JDK
Jdk是Java语言的软件开发工具包,主要用于移动设备、嵌入式设备上的java应用程序。
JDK(JavaDevelopmentKit)是Java语言的软件开发工具包(SDK)。
SE(J2SE)standardedition,标准版,是我们通常用的一个版本,从JDK5.0开始,改名为JavaSE。
EE(J2EE)enterpriseedition,企业版,使用这种JDK开发J2EE应用程序,从JDK5.0开始,改名为JavaEE。
ME(J2么)microedition,主要用于移动设备、嵌入式设备上的java应用程序,从JDK5.0开始,改名为JavaME。
没有JDK的话,无法编译Java程序,如果想只运行Java程序,要确保已安装相应的JRE。
三、目标分析
3.1、教师需求
1.教师(管理员)够实现对整个学生信息的添加、修改、删除、查询等操作,对教师(管理员)用户的添加、删除、修改等操作。
2.教师(管理员)可以将学生成绩的数据库发布到网上,学生的信息发布的网上,方便学生教师进行查询,达到资源共享的目的。
3.教师(管理员)能够在一定的权限内对所有学生成绩的查询、删除、修改是、查看等,对,登录密码的修改。
3.2、学生需求
学生可以在自己的权限内对对自己成绩的查询,以及个人信息的查询,登录密码的修改,的相关操作。
四、需求分析
该学生成绩管理系统,实现简单的密码修改、成绩查询、课程查询、学生查询等操作,并能实现简单的数据统计。
此系统主要完成用户密码登录、用户密码的修改、成绩查询、课程查询、学生查询、具体成绩查询等基本功能。
(一)用户密码登录:
在登录程序之前会先弹出一个登录对话框,在正确的输入了数据库中存储的用户和密码后才能登录程序。
(二)成绩查询
1、成绩修改前选中要修改的成绩信息,然后进行修改。
2、成绩添加直接弹出添加对话框,然后进行添加。
3、成绩删除前选中要删除的成绩信息,然后直接删除。
(三)学生查询
查询学生个人信息以及成绩。
(四)学生信息查询
1、学生信息修改前选中要修改的学生信息,然后进行修改。
2、学生信息添加前直接弹出添加对话框,然后进行添加。
3、学生信息删除前选中要删除的学生信息,然后直接删除。
4.1行业现状
在现代,高科技的飞跃发展,计算机的大量普及,使得人们生活节奏越来越快。
因此对教育行业的多元信息进行有效的管理工作,也成为教育行业中的重中之重。
目前,学校工作繁杂、资料重多,虽然各类管理信息系统已进入高校,但还未普及,而对于学生成绩管理来说,目前还没有一套完整的、统一的系统。
为各高校教务工作人,提高工作效率,所以制作了学生成绩管理系统。
学生成绩管理系统依据开发要求主要应用于教育系统,完成对日常的教育工作中学生成绩档案的数字化管理。
比较系统地对教务、教学上的各项服务和信息进行管理,使数据管理更现代化、自动化、智能化、人性化。
同时,减轻了学院教务人员管理的工作量,缩小开支,提高工作效率和准确率,使其变得更具有条理性,科学性,为教育行业做出了巨大的贡献,也为今天的民办教育在未来市场的竞争力有所提高。
学生成绩管理系统使用了全新的成绩管理理念,系统从完善的基础信息管理,和对创建新用户、已创建的成绩数据的录入,修改,浏览,统计等功能操作,基本能够满足各高校教师的需要。
4.2可行性分析
本次课程设计题目:
“学生成绩管理系统”,主要目的是设计一个登陆界面,连接数据库系统,用以实现学生、班级以及考核成绩等多项管理。
同时对整个系统的分析、设计过程给出一个完整的论证。
学生成绩管理系统是一种基于集中统一规划的数据库数据管理新模式,其实就对学生、班级、考核成绩的管理。
在信息时代的今天,人类需要对在政治、经济、军事、文化、科研、教育等领域产生的大量信息进行管理,并对数据进行加工处理,数据库技术则是信息管理与数据处理的先进技术。
随着信息量的不断增加,作为计算机的三大主要应用(科学计算、过程控制和数据处理)之一的数据处理,已迅速上升为计算机应用的主要方面,数据库技术则成为人们日常生活中处理数据不可缺少的有力工具,并且现代的成绩管理系统几乎都以数据库技术作为核心。
由于本系统管理的对象简单,且每个数据内容之间都具有较强的关联性,涉及过程并不是很复杂。
因此,比较适合于采用数据库管理。
在技术难度方面,由于有指导老师的指导和相关参考文献,特别是网上资料,特别是参考其他程序的功能,因此完全可以实现。
1、社会可行性
现代社会是信息高速发展的社会,尤其是计算机科学日趋成熟,选择使用计算机对学生成绩信息进行管理已经成为现代学校的必然选择,所以从社会角度对本系统进行分析是完全具有可行性的。
2、技术可行性
开发数据库管理管理系统需要选择两种工具,即前台开发语言以及后台数据库。
本系统运用了JAVA作为前台开发,MicrosoftSQLServer2008作为后台数据库。
3、经济可行性
经济可行性主要包括:
“成本---收益”分析和“短期---长远收益”分析。
相对于本课题来说,这两点并不重要。
五、概念模型E-R图
5.1STU用户名实体E-R图
5.2TEA用户名实体E-R图
5.3学生实体E-R图
5.4成绩实体E—R图
六、学生成绩管理系统设计的逻辑结构设计
6.1STU用户名表
表中列名
数据类型
允许null值
说明
ID
char
notnull
学生账号
Pwd
char
notnull
学生登录密码
6.2TEA用户名表
表中列名
数据类型
允许null值
说明
ID
char
notnull
教师账号
Pwd
char
notnull
教师登录密码
6.3STU表
表中列名
数据类型
可否为空
说明
ID
char
notnull
学生学号
Pwd
char
notnull
学生密码
Name
char
notnull
学生姓名
Sex
char
notnull
学生性别
Class
char
notnull
学生班级
Collage
char
null
学生学院
6.4计算机系成绩表
表中列名
数据类型
可否为空
说明
ID
char
notnull
学生学号
计算机网络
char
notnull
课程成绩
Linux操作系统
char
notnull
课程成绩
计算机专业英语
char
notnull
课程成绩
计算机信息技术基础
char
notnull
课程成绩
Java程序设计
char
notnull
课程成绩
高等数学
char
notnull
课程成绩
XML
char
notnull
课程成绩
七.数据截图
7.1STU用户名表截图
7.2TEA用户名表截图
7.3STU表截图
7.4计算机系成绩表截图
八、学生成绩管理系统功能的实现
8.1学生登录
(1)通过学号,密码进行登录自己的账户,从而显示登录成功
图8.1学生登录界面以及登录成功界面
(2)以账户“1320704130”登录查看自己的个人信息以及自己的成绩:
图8.2查询学生信息的界面
图8.3查询成绩的界面
8.2教师登录
(1)通过教师号,密码进行登录自己的账户,从而显示登录成功
图8.4教师登录界面以及登录成功界面
(2)以账户“30”登录录入学生信息
图8.5录入学生信息界面以及成功录入的界面
(3)修改学生信息
图8.6修改学生信息前、后的界面
(4)删除学生信息
图8.7删除学生信息前、后的界面
(5)录入学生成绩
图8.8录入学生成绩界面以及录入成功的界面
(6)修改学生成绩
图8.9修改学生成绩前、后的界面
(7)删除学生成绩
图8.10删除学生成绩前、后的界面
九、课程设计总结
两个礼拜的时间很快就过去了,这两个礼拜我不敢说自己有多大的进步,获得了多少知识,但起码是了解了项目开发的部分过程。
虽说上过数据库相关的课程,但是没有亲身经历过相关的设计工作细节。
这次课程设计给我提供了一个很好的机会。
通过这次课程设计发现这其中需要的很多知识我们都没有接触过,上网查找资料的时候发现我们以前所学到的仅仅是皮毛,还有很多需要我们掌握的东西我们根本不知道。
同时也发现有很多已经学过的东西我们没有理解到位,不能灵活运用于实际,不能很好的用来解决问题,这就需要自己不断的大量的实践,通过不断的自学,不断地发现问题,思考问题,进而解决问题。
在这个过程中我们将深刻理解所学知识,同时也可以学到不少很实用的东西。
这次的数据库课程设计,我选择的是学生成绩管理系统的设计。
从各种文档的阅读到需求分析、概要设计、数据库总体设计、代码编写与调试,我都准备了好长时间。
很多东西书上写的很清楚,貌似看着也很简单,思路非常清晰。
但真正需要自己想办法去设计一个系统的时候才发现其中的难度。
经常做到后面突然就发现自己一开始的设计有问题,然后又回去返工,在各种反复中不断完善自己的想法。
我想有这样的问题不止我一个,事后想想是一开始着手做的时候下手过于轻快,或者说是根本不了解自己要做的这个系统是给谁用的。
因为没有事先做过仔细的用户调查,不知道整个业务的流程,也不知道用户需要什么功能就忙着开发,这就是作为设计开发人员需要特别警惕避免的,不然会给后来的工作带来很大的麻烦,甚至可能会需要全盘推倒重来。
所以以后的课程设计要特别注意这一块的设计。
在需求分析过程中,我们通过上网查资料,去图书馆查阅相关资料,结合我们的生活经验,根据可行性研究的结果和用户的需要,分析现有情况及问题。
在两个礼拜的时间里,不断地对程序及各模块进行修改、编译、调试、运行,其间遇到很多问题,最终把它解决了。
通过这次课程设计,我对数据库的设计更加熟练了。
通过本次课程设计,对SQL语言,数据库的创建、修改、删除方法有了一定的了解,通过导入表和删除表、更改表,学会了数据库的基本操作。
很多事情不是想象中的那么简单的,它涉及到的各种实体、属性、数据流程、数据处理等等。
很多时候感觉后面的设计根本无法继续,感觉像是被前面做的各种图限制了。
在做关系模型转换的时候碰到有些实体即可以认为是实体又可以作为属性,为了避免冗余,尽量按照属性处理了。
通过本次课程设计,我觉得不管做什么,始终都要相信自己。
不要畏惧,不要怕遇到困难,什么都要去尝试,有些你开始认为很难的事在你尝试之后你可能会发现原来它并没有你你想象的那么难。
如果没有自信,没有目标,没有信心就很难把事情做好,当其他人都在迷茫的时候,自己一定要坚信目标。
从学习这个专业,到以后从事这方面的工作都需要不断地去学习去实践,这次实践可以给我们敲一个警钟,我们面临毕业,面临择业,需要这些实践经验,在困难面前要勇于尝试,这是这次课程设计给我的最大感想!
通过这次课程设计的完成,使我对自己所学知识进一步的了解,同时通过实践发现自己的不足,对知识的掌握及运用存在诸多的不完善。
本系统也存在着很多不足,如系统十分简单,实现功能也不够完善,安全性问题也没有很好的解决。
所以在今后的学习中我会继续努力,完善自我,同学的帮助、指导老师的用心辅导和学校的精心安排使这个课题能够顺利进行。
但是,由于时间仓促以及本人水平有限,本系统还有很多不完善之处,也难免存在错漏,恳请老师谅解。
附录:
源程序代码
用户登录界面:
importjava.awt.*;
importjavax.swing.*;
importjava.awt.event.*;
importjava.sql.*;
publicclassSystemsextendsJFrameimplementsActionListener
{
staticSystemsss;
JPanelpanel=newJPanel();
JLabellabel1=newJLabel("输入姓名:
");
JTextFieldname=newJTextField();
JLabellabel2=newJLabel("密码:
");
JPasswordFieldpwd=newJPasswordField();
JButtonEnter=newJButton("登录");
JButtonExit=newJButton("退出");
Stringurl="E:
\\mysql\\TM1.jpg";
ButtonGroupbgp=newButtonGroup();
JRadioButtonstu=newJRadioButton("学生");
JRadioButtontch=newJRadioButton("教师");
publicSystems()
{
super("登录系统");
this.setResizable(false);
JLabelimg=newJLabel(newImageIcon(url));
img.setBounds(0,0,500,125);
panel.add(img);
stu.setBounds(165,210,70,20);
tch.setBounds(265,210,70,20);
bgp.add(stu);
bgp.add(tch);
panel.add(stu);
panel.add(tch);
Enter.setBounds(150,250,80,20);
Exit.setBounds(270,250,80,20);
Enter.addActionListener(this);
Exit.addActionListener(this);
panel.add(Enter);
panel.add(Exit);
panel.setLayout(null);
this.add(panel);
label1.setBounds(135,130,100,25);
panel.add(label1);
name.setBounds(265,130,100,25);
panel.add(name);
label2.setBounds(135,165,100,25);
panel.add(label2);
pwd.setBounds(265,165,100,25);
panel.add(pwd);
this.setBounds(100,100,500,350);
this.setVisible(true);
}
publicvoidactionPerformed(ActionEvente)
{
if(e.getSource()==Enter)
{
Stringusername,password;
username=name.getText();
password=newString(pwd.getPassword());
try
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
}
catch(ClassNotFoundExceptionce)
{JOptionPane.showMessageDialog(ss,ce.getMessage());}
if(stu.isSelected())
{try
{Connectioncon=DriverManager.getConnection("jdbc:
odbc:
shujuku","sa","");
Statementstmt=con.createStatement();
ResultSetrs=stmt.executeQuery("select*fromSTU");
while(rs.next())
{
if(rs.getString("ID").equals(username))
if((rs.getString("Pwd").equals(password)))
{
JOptionPane.showMessageDialog(ss,"登陆成功");
tudentsstu=newStudents();
}
else
{
JOptionPane.showMessageDialog(ss,"登录失败");
}
}
rs.close();
stmt.close();
}
catch(SQLExceptionse)
{
JOptionPane.showMessageDialog(ss,se.getMessage());
}
}
elseif(tch.isSelected())
{
try
{
Connectioncon=DriverManager.getConnection("jdbc:
odbc:
shujuku","sa","");
Statementstmt=con.createStatement();
ResultSetrs=stmt.executeQuery("select*fromTCH");
while(rs.next())
{
if(rs.getString("ID").equals
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学生 成绩管理系统