通用成绩管理系统.docx
- 文档编号:30245740
- 上传时间:2023-08-13
- 格式:DOCX
- 页数:33
- 大小:2.02MB
通用成绩管理系统.docx
《通用成绩管理系统.docx》由会员分享,可在线阅读,更多相关《通用成绩管理系统.docx(33页珍藏版)》请在冰豆网上搜索。
通用成绩管理系统
江南大学太湖学院
数据库课程设计报告
课题《基于SQL数据库的通用成绩管理系统》
设计者张善民(文档管理员)
专业计算机科学与技术
班级08计科84
学号0821230
同组成员名单组长(主程序员):
石浩、辅程序员1:
吴志祥、辅程序员2:
杨波、美工:
诸烨
指导老师xxoo
评定成绩___________________
2011年1月4日
课程设计任务书
一、课程名称《数据库系统原理》指导教师xxoo
二、本课程设计题目《基于SQL数据库的通用成绩管理系统》
三、本设计所要达到的目的和要求
1、主题明确,软体开发要有创新性,能体现SQL的存储过程、触发器、游标技术等;
2、用高级语言DELPHI7结合SQLServer数据库进行开发;
3、写出数据库关系模式及相应的数据库表关系图;
4、绘制成绩MIS相应的系统流程图、E-R图等;
5、完成成绩MIS登录界面、账户管理、主界面、成绩录入、成绩查询和其各项设计与操作。
四、接受任务学生:
08计科84班姓名张善民
五、开始及完成时间自2011年1月4日
至2011年1月14日
2011年1月4日
目录
1.概论3
2.系统需求分析3
3.功能需求分析5
3.1系统功能的描述5
3.2系统功能模块示意图5
4.系统设计6
4.1数据概念结构设计6
4.2系统数据流图6
4.3系统E-R图8
4.4.系统数据字典9
5.系统软件模块测试10
5.1用户登录界面模块测试10
5.2系统主界面模块测试12
5.3系统账户管理界面模块测试13
5.4系统用户密码修改模块测试15
5.5系统成绩录入界面模块测试17
5.6系统成绩查询界面模块测试17
6.系统配置、帮助与使用说明小组报告18
6.1Windows系统配置19
6.2Delphi7.0系统配置与使用说明19
6.3MicrosoftSQLSever2000系统配置与使用说明21
6.4MicrosoftVisio2003系统配置与使用说明23
6.5Photoshop系统配置与使用说明25
7.总结26
8.参考文献27
1.概论
本系统依据开发要求主要应用于教育系统,完成对日常的教育工作中学生成绩档案的数字化管理。
开发本系统可使学院教职员工减轻工作压力,比较系统地对教务、教学上的各项服务和信息进行管理,同时,可以减少劳动力的使用,加快查询速度、加强管理,以及国家各部门关于信息化的步伐,使各项管理更加规范化。
随着在校大学生人数的不断增加,教务系统的数据量也不断的上涨。
学校工作繁杂、资料重多,虽然各类管理信息系统已进入高校,但还尚未完善,而对于学生成绩管理来说,目前还没有一套完善的学生成绩管理系统。
因此,开发一套适和大众的、兼容性好的系统是很有必要的。
本文根据学生成绩管理的实际情况,提出了成绩管理系统的基本设计思想,简要介绍了系统各功能模块及数据库的设计,着重讨论了用高级语言Delphi7.0技术和SQLServer2000技术开发成绩管理系统时的数据库访问技术,并给出了部分实现代码。
通过该系统,使学生可以方便地在校园网上进行成绩查询。
该系统在WindowsXP系统和Win7平台下开发完成,使用Delphi7.0的开发语言,SQLServer2000作为数据库。
系统有较高的安全性和较好的性能。
其中连接数据库的字符串可以随时修改,增加了灵活性,保护了数据库的安全。
本系统在开发过程中,注意使其符合操作的业务流程,并力求系统的全面性、通用性,使得本系统不只适用于一家教育机构。
在开发方法的选择上,相结合的遵循系统调查研究、系统分析、系统设计和系统实施四个主要阶段进行设计,随着用户的使用及对系统了解的不断加深,对某一部分或几部分进行重新分析、设计、实施。
本论文主要从系统分析、系统设计、与使用等几个方面进行介绍还介绍了与成绩管理系统相关的的基本内容及发展情况。
2.系统需求分析
本系统是将现代化的计算机技术和传统的教学、教务工作相结合,按照学院的工作流程设计完成的。
为了使系统在学院的管理中发挥更大的作用,实现工作过程的计算机化,提高工作效率和工作质量,现提出如下的系统开发目标:
1.系统应具有实用性、可靠性和适用性,同时注意到先进性;
2.对各个数据库进行动态管理,防止混乱;
3.能够按照用户选择的不同的条件进行简单的功能操作;
4.方便用户的操作,尽量减少用户的操作。
学生成绩管理是学校管理中重要的一个环节,作为学校,除了育人,就是育知,学生成绩管理的计算机化是整个学校教务管理中的重要一部分,能否实现这一步关系到学校办学整体效率的高低,介于它的重要性,学生成绩管理系统的开发与应用就逐渐提入议程,并占着越来越重要的份量。
运用学生成绩管理系统可以减轻学院教学人员的工作量,缩小开支,提高工作效率与准确率,能够合理安排时间,能够尽快的知道自己的考试成绩,投入新的课程的学习或复习这次没有考过的课程。
而学生成绩管理系统的应用也为今天的民办教育在未来市场的竞争力有所提高。
从大的方向说,就是为了加速我国四化建设的发展,实现全部的自动化,使我国发展成为通讯网络化,决策科学化,办公自动化的国家。
在现代,高科技的飞跃发展,人们工作习惯的改变,特别是电脑的大量普及,人们生活节奏越来越快,怎样提高工作效率是人们首先考虑的问题。
学生成绩管理是一个非常繁琐与复杂的一项工作,一个原因就是工作量大,不好管。
对于一个学校而言,更应该运用一些本地资源,提高管理的力度,对学生负责,对家长负责。
现在,计算机的价格已经十分低廉,性能却有了长足的进步。
而本系统的开发,为学校的工作效率带来了一个质的飞跃,为此主要表现有以下几个方面:
第一,本系统的运行可以代替人工进行许多繁杂的劳动;
第二,本系统的运行可以节省许多资源;
第三,本系统的运行可以大大的提高学校的工作效率;
第四,本系统可以使敏感文档更加安全,等等。
所以,本系统在经济上是可行的。
本系统的开发利用MicrosoftSQLServer2000作为系统的数据库,它是一个支持多用户的新型数据库,适用于大、中规模的数据量需求。
学校校园网的建设也改系统的利用提供了硬件的支持。
使用Delphi7.0作为系统开发的开发环境,它提供完善的指令控制语句丰富的数据类型,给开发系统提供的保障为开发满足客户要求的系统,保证了代码的模块化要求,而代码模块化的提高,非常有利于以后对新系统的扩展与修改。
综上所述,本系统的设计与开发在技术上和硬件设备上的条件都是满足的,因此,它在技术上是可行的。
本系统为一个小型的学生成绩管理系统,所耗费的资源非常的小,学校的电脑无论是硬件还是软件都能够满足条件,界面设计时充分考虑管理人员的习惯,使得操作简单;数据录入迅速、规范、可靠;统计准确;制表灵活;适应力强;容易扩充,因此,本系统在操作上是可行的。
本学生管理系统具有的特点:
1).实用性原则:
确保系统具有良好的系统性能,友好的用户界面,高的处理效率,便于使用和维护,并采用成熟的技术。
2).先进性原则:
尽量采用先进而且成熟的技术,使系统具有较高的技术水和较
长的生命周期
3).开放性、安全性、可靠性及可扩展性原则。
4).兼容性原则:
对于所选硬件系统及平台,能很好地适应开发和使用的需要。
5).规范性原则:
软件设计过程严格按照“软件工程”的规定,系统编码,文档,操作系统平台以及所采用的开发方法按照相应的国际标准和国家标准。
3.功能需求分析
3.1系统功能的描述
学生成绩管理系统对学校加强学生成绩管理有着极其重要的作用。
由于各大高校的不断扩招,学生的数量的增加,传统的人工管理不仅工作量大,而且也容易出现问题。
用户分为管理员、教师用户、学生用户三类。
不论是管理员或是教师用户,还是学生用户都要通过用户名和密码进行登录;从老师角度,老师可以看到学生的基本信息包括学号、姓名、班级、性别、原高中及学生的各科成绩并可以对学生成绩进行添加、修改、更新和删除,并能够打印报表;从学生的角度,学生可以看到学生的各科成绩及自己的基本信息,及总分和平均分;而从管理员的角度,管理员可以修改用户的用户名和密码以及设计用户访问系统的权限。
同时用户可以看到该系统所具有的帮助信息,如:
系统的设计者,和该版本的基本信息,及该系统适合那些机构。
3.2系统功能模块示意图
4.系统设计
4.1数据概念结构设计
数据库在一个信息管理系统中战友非常重要的位置,数据结构设计的好坏将直接对应用系统的效率以及实现的效果产生影响。
合理的数据库结构可以提高数据存储的效率,保证数据的完整和一致。
同时,合理的数据库结构也将有利于程序的实现。
4.2系统数据流图
在对学生成绩管理系统需求分析的基础上,经逐步抽象、概括、分析、充分研讨,得到学生成绩管理系统的数据流图:
4.3系统E-R图
4.4.系统数据字典
数据流图表达了数据和处理的关系,数据字典是系统中各类数据描述的集合,是进行详细的数据收集和数据分析所收获的主要成果。
数据字典通常包含数据项、数据结构、数据流、数据存储和处理过程5部分。
以下用数据字典单卡片的形式来举例说明。
(1)学生的“学生基本信息”的数据结构:
a)名字:
学生基本信息
b)别名:
无;
c)描述:
学生的基本信息的集合;
d)定义:
学生学号+学生姓名+学生性别+学生年龄+学生籍贯+学生原就读高中+学生
e)所在系:
机电系/文法系/经管系
f)位置:
保存在学生基本信息表中。
(2)数据结构“学生信息”/“课程信息”的数据项“学号”的数据项:
a)名字:
学生学号;
b)别名:
无;
c)描述:
唯一标识学生的数字编号;
d)定义:
整数型
e)位置:
学生基本信息表、课程信息表。
(3)以数据结构“学生基本信息”在系统内的流动为例来描述数据流:
数据流是数据结构在系统内的传输的路径。
a)数据流名:
学生的基本信息;
b)说明:
“学生基本信息”数据结构在系统内的流向;
c)数据流来源:
管理员对学生的基本信息的输入;
d)数据流去向:
学生基本信息表;
e)平均流量:
每日几十次;
f)高峰期流量:
每日上百次。
(4)数据存储
数据存储是数据结构停留或保存的地方,也是数据的来源和去向之一。
对数据存储的描述通常包含(以学生基本信息在系统的存储为例):
a)数据存储名:
学生基本信息表;
b)说明:
学生的基本信息,作为原始的数据需要保存与备查;
c)学号:
每一个学生都有一个唯一的识别学号;
d)输入的数据流:
学生的注册信息、信息核实处理;
e)输出的数据流:
经核实后的学生的基本信息;
f)数据结构:
学生基本信息;
g)存取频度:
半学期一次;
h)存取方式:
删除、查询、修改以及更新;
(5)处理过程(以账户管理为例)
处理过程具体处理的逻辑一般用判定表或判定数来描述。
a)处理过程名:
用户的账户管理;
b)说明:
描述用户的用户名和密码的的情况;
c)输入:
用户名、密码、添加、删除、刷新、取消;
d)输出:
经处理的用户的账户情况;
e)处理:
对用户名进行唯一性验证,密码和用户名应一一对应,进行用户名和密码的添加、删除、修改。
g)数据:
用户的账户信息的变化情况。
5.系统软件模块测试
5.1用户登录界面模块测试
(图一)
当用户进入学生成绩管理系统时,首先出现如上图一的图;
(图二)
当用户输入用户名和密码有误的时候,会跳出如图二的图上的显示:
验证码错误,请重新登录,同时还提醒用户你还有几次机会。
用总共有三次机会,当三次都输入错误的时候系统会自动退出学生成绩管理系统。
登入界面支持的程序:
user:
=Trim(edit1.Text);
pass:
=Trim(Edit2.Text);
adoquery1.Close;
adoquery1.SQL.Clear;
adoquery1.SQL.Text:
='select*fromloginwhereusername='''+user+'''andpassword='''+pass+'''';
adoquery1.Open;
ifadoquery1.Recordset.RecordCount=0then
//未找到用户,提示用户输入错误
begin
inc(times);
iftimes<3then
begin
//Application.MessageBox('用户名或密码不正确!
请重新输入!
','^_^注意!
',MB_OK);
showmessage('验证失败,请重新登录!
'+#13+'还有'+inttostr(3-times)+'次机会');
edit1.Text:
='';
edit2.Text:
='';
end
else
begin
Application.MessageBox('登录错误次数已达3次,请退出!
','^_^注意!
',MB_OK);
application.Terminate;
end
end
else
begin
formlogin.Hide;
formmain.Show;end;
5.2系统主界面模块测试
只有当用户输入正确的用户名和密码时候,系统会进入“考试成绩管理系统主界面“
(图四)
其中“系统管理“包含账户管理、密码修改
;”系部选择“包含
机电系成绩录入、机电系成绩查询;经管系成绩录入、经管系系成绩查询;文法系成绩录入、文法系成绩查询;主菜单栏中还包含帮助
,其中含有学生管理系统的版本信息,同时好汉学生成绩管理系的”退出“按钮,当用户点击该按钮的时候,系统会自动退出学生成绩管理系统;
当用户点击帮助按钮中的“版本信息“系统会弹出
界面,其中包含通用考试成绩查询系统所包含的各类信息。
5.3系统账户管理界面模块测试
当用户点击系统“系统管理“的”账户管理“时会跳出图五的界面,学生管理系统对有权限的用户提过修改的功能,当输入的用户名与系统中已经存在的用户名的时候,系统会跳出”用户名已存在,请重新添加!
;只有添加的用户名在系统中没有的用户名时候,在允许用户添加新的用户名;
(图五)
当有所系统允许的可以修改账户的的用户的时候(图五、图六)。
当该用户要删除系统中的某个用户的时候,但输入的用户名或密码不正确的时候,系统会跳出“用户名或密码不正确,请重新输入”但用户名和密码正确的时候,系统还会提醒用户确实要删除某用户吗?
(图六)
模块功能中“添加”、“删除”的软件支持程序:
adoquery1.Close;//调用查询时要养成好习惯
//关闭表,清楚sql中的语句
adoquery1.SQL.Clear;
adoquery1.SQL.Text:
='select*fromloginwhereusername='''+Trim(Edit1.Text)+'''';
//'''就相当于一个'号
//当变量user和pass的内容和'login'表中的一致时,显示主窗体
adoquery1.Open;
ifadoquery1.RecordCount=0then
begin
adoquery1.Close;
adoquery1.SQL.Clear;
adoquery1.SQL.Text:
='insertintologin(username,password)values('''+Trim(Edit1.Text)+''','''+Trim(Edit2.Text)+''')';
adoquery1.ExecSQL;
adoquery1.Close;
adoquery1.SQL.Clear;
adoquery1.SQL.Text:
='select*fromlogin';
adoquery1.open;
edit1.Text:
='';
edit2.Text:
='';
Application.MessageBox('用户添加成功','提示',MB_OK);
end
else
Application.MessageBox('用户名已存在,请重新添加!
','提示',MB_OK);
edit1.text:
='';
edit2.text:
='';
edit1.Enabled:
=true;
edit2.Enabled:
=true;
adoquery1.Close;
adoquery1.SQL.Clear;
adoquery1.SQL.Text:
='select*fromloginwhereusername='''+Trim(Edit1.Text)+'''andpassword='''+Trim(Edit2.Text)+'''';
adoquery1.Open;
ifadoquery1.Recordset.RecordCount=0then
//未找到用户,提示用户输入错误
begin
Application.MessageBox('用户名或密码不正确!
请重新输入!
','^_^注意!
',MB_OK);
edit1.Text:
='';
edit2.Text:
='';
adoquery1.close;
adoquery1.SQL.clear;
adoquery1.SQL.add('select*fromlogin');
adoquery1.open;
end
else
Application.MessageBox('确定要删除吗?
','^_^注意!
',MB_OK);
adoquery1.close;
adoquery1.SQL.clear;
adoquery1.SQL.add('deletefromlogin');
adoquery1.SQL.add('whereusername='''+trim(edit1.text)+'''');
adoquery1.execSQL;
adoquery1.close;
adoquery1.SQL.clear;
adoquery1.SQL.add('select*fromlogin');
adoquery1.open;
end;
当用户进入“账户管理”的界面的时(图七、图八),可以执行用户的密码的修改,当输入的用户名或者密码不正确的时候,系统会提醒用户用户名或密码不正确要求再次输入;只有用户输入正确的用户名和密码的时候在可以修改用户的密码,同时系统还会提醒用户新密码应经修改成功。
5.4系统用户密码修改模块测试
(图七)
(图八)
模块中更新新密码的软件支持程序:
adoquery1.Close;
adoquery1.SQL.Clear;
adoquery1.SQL.Text:
='select*fromloginwhereusername='''+Trim(Edit3.Text)+'''andpassword='''+Trim(Edit4.Text)+'''';
adoquery1.Open;
ifadoquery1.Recordset.RecordCount=0then
//未找到用户,提示用户输入错误
begin
Application.MessageBox('用户名或密码不正确!
请重新输入!
','^_^注意!
',MB_OK);
edit3.Text:
='';
edit4.Text:
='';
edit5.Text:
='';
adoquery1.close;
adoquery1.SQL.clear;
adoquery1.SQL.add('select*fromlogin');
adoquery1.open;
//Application.MessageBox('用户名新密码更改成功!
','^_^注意!
',MB_OK);
end
else
begin
adoquery1.close;
adoquery1.SQL.clear;
adoquery1.SQL.add('updateloginsetpassword='''+trim(edit5.text)+'''');
adoquery1.SQL.add('whereusername='''+trim(edit3.text)+'''');
//Application.MessageBox('用户名新密码更改成功!
','^_^注意!
',MB_OK);
adoquery1.execSQL;
adoquery1.close;
adoquery1.SQL.clear;
adoquery1.SQL.add('select*fromlogin');
Application.MessageBox('用户名新密码更改成功!
','^_^注意!
',MB_OK);
adoquery1.open;
edit3.Text:
='';
edit4.Text:
='';
edit5.Text:
='';
5.5系统成绩录入界面模块测试
当系统对允许学生成绩修改的用户提供成绩录入的功能,进入成绩录入界面的时,可以从界面中看到学生的基本的信息:
学号、姓名、年龄、性别、籍贯、原高中及学生的所修的课程和对应课程的成绩(图九);
(图九)
5.6系统成绩查询界面模块测试
进入成绩查询界面,可以在该页面输入学生的学号,从而查询某学生的总成绩和平均成绩(图十);
(图十)
成绩查询模块界面测试程序支持:
adoquery1.close;
adoquery1.SQL.Clear;
adoquery1.sql.text:
='select学号,课程号,成绩fromscslavewhere学号='''+Trim(edit1.Text)+'''';
adoquery1.open;
//求出平均成绩和总分,分别赋值给edit
adoquery1.close;
adoquery1.SQL.Clear;
adoquery1.sql.text:
='selectsum(成绩)as求和,avg(成绩)as平均值fromscslavewhere学号='''+Trim(edit1.Text)+'''';
adoquery1.open;
Edit2.Text:
=ADOQuery1.FieldByName('求和').AsString;
Edit3.Text:
=ADOQuery1.FieldByName('平均值').AsString;
//重新恢复SQL数据显示
adoquery1.close;
adoquery1.SQL.Clear;
adoquery1.sql.text:
='select学号,课程号,成绩fromscslavewhere学号='''+Trim(edit1.Text)+
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 通用 成绩管理系统