数据库学生信息系统课程实习报告.docx
《数据库学生信息系统课程实习报告.docx》由会员分享,可在线阅读,更多相关《数据库学生信息系统课程实习报告.docx(19页珍藏版)》请在冰豆网上搜索。
![数据库学生信息系统课程实习报告.docx](https://file1.bdocx.com/fileroot1/2023-6/11/7160a0f8-cb1b-4c7e-8365-fad567b392b2/7160a0f8-cb1b-4c7e-8365-fad567b392b21.gif)
数据库学生信息系统课程实习报告
学生信息管理系统
一、引言
1、项目背景
随着信息技术在管理上越来越深入而广泛的应用,管理信息系统的实施在技术上已逐步成熟。
管理信息系统是一个不断发展的新型学科,任何一个单位要生存要发展,要高效率地把内部活动有机地组织起来,就必须建立与自身特点相适应的管理信息系统。
目前,在学校里,随着高校规模的不断扩大和招生人数的不断增加,需要处理大量的学生数据信息。
如何更好的组织学生信息,更加快捷的管理学生信息显得尤为的重要。
作为计算机应用的一部分,使用计算机对学生信息进行管理,有着手工管理所无法比拟的优点.例如:
检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。
这些优点能够极大地提高学生信息管理的效率,也是学校的科学化、正规化管理,与世界接轨的重要条件。
我们为此开发了一套学生信息管理系统,本系统面向学校的教务人员,目的是为学校办公管理提供一个快速、简单规范的管理平台,使学院在学生信息管理方面更加规范化,快捷化。
2、项目目标
本章以学校的学生信息管理为依托,结合教务教案管理,设计并开发一个学生信息管理系统,提供一个信息更新快捷、管理方便、功能设置合理的学生信息管理解决方案。
针对学校大量的学生信息,就学生管理的几个方面,提供一个互动式的学生管理平台。
系统目标如下:
Ø通过学生信息管理系统的实现,使学校的学生信息管理更加科学化。
Ø提供灵活、方便的操作。
Ø节约学生信息管理的成本,提高学校管理的效率。
Ø对系统提供必要的权限管理。
Ø为学校考核学生的综合素质提供必要的数据支持。
二、系统功能模块划分
1、主界面模块
本模块提供学生信息管理系统的主菜单界面,供用户选择和执行各项任务。
本模块中还应对进入系统的操作人员进行用户和密码的验证。
2、查询模块
本模块提供数据表信息的查询检索功能,包括学生基本信息查询、学生成绩查询、课程信息查询等子模块,对于学生信息查询,可以在输入学号后快速显示。
3、数据维护模块
本模块提供数据表信息的修改、添加、删除功能。
包括学生基本信息的维护、学生成绩表的维护及课程信息表的维护等子模块。
4、统计与报表模块
该模块提供各种统计信息与报表打印功能。
5、根据对以上功能模块的分析,再对上述功能进行模块化,从而得出系统功能模块图如下:
<流程图)
三、学生信息管理系统的具体操作显示图
1、数据表间索引及永久性关系设计如图:
2、做好实习后项目管理器显示如图:
3、系统登录界面
由Label、Command、Combo1和Timer(计时器)控件组成。
其中,计时器主要用于控制实现封面表单在3s之后自动关闭,Time1控件的Timerevent添加代码如下:
thisform.Release
DOFORMform_login.scx&&form_login,scx是身份表单的文件名
为了使用户在封面表单上单击后能自动关闭,并进入身份验证表单,Form1的Clickevent添加代码如下:
thisform.Release
DOFORMform_login.scx
系统登录界面对象的事件过程代码如下:
<1)Command1<确认)按钮的Click添加代码如下:
Lname=ALLTRIM(thisform.text1.Value>
pwd=ALLTRIM(thisform.text2.value>
USE管理员表&&打开管理员表
LOCATEFORALLTRIM(用户名>==Lname
IFFOUND(>.and.ALLTRIM(密码>==pwd
USE&&登陆成功,关闭数据表
thisform.Release&&关闭当前表单
DOmain.mpr&&执行主菜单程序
ELSE
MESSAGEBOX("用户名或密码错误,请重新输入!
",0,"错误">
thisform.text2.Value=""
USE
ENDIF
<2)Command2(退出>按钮的Click添加代码如下:
answer=MESSAGEBOX("是否确定要退出系统",4+32,"确定">
IFanswer=6&&如果用户单击了“确定”按钮
thisform.release
QUIT
ELSE
thisform.text1.SetFocus
ENDIF
4、进入后查询:
<1)按学号或姓名查询
Command1(开始查询)按钮的Click添加代码如下:
sno=ALLTRIM(thisform.text1.value>
SCAN
IF学生表.学号=sno.or.学生表.姓名=sno
thisform.text1.Value=""
thisform.Refresh
RETURN
ENDIF
ENDSCAN
MESSAGEBOX("该学生不存在!
",0,"查找失败">
<2)按学号或课程id查询
Command1(开始查询)按钮的Click添加代码如下:
sno=ALLTRIM(thisform.text1.value>
SCAN
IF成绩表.学号=sno.or.成绩表.课程id=sno
thisform.text1.Value=""
thisform.Refresh
RETURN
ENDIF
ENDSCAN
MESSAGEBOX("该学生不存在!
",0,"查找失败">
<3)按课程id或课程名查询
Command1(开始查询)按钮的Click添加代码如下:
sno=ALLTRIM(thisform.text1.value>
SCAN
IF课程表.课程id=sno.or.课程表.课程名=sno
thisform.text1.Value=""
thisform.Refresh
RETURN
ENDIF
ENDSCAN
MESSAGEBOX("该学生不存在!
",0,"查找失败
<4)数据维护:
学生表数据维护:
课程表数据维护:
成绩表数据维护:
管理员表数据维护:
以上Command1(添加部分)按钮的Click添加代码如下:
this.Enabled=.F.
state=1
thisform.grid1.AllowAddNew=.F.
APPEND&&插入空白记录
thisform.grid1.SetFocus
mand2.Enabled=.F.
mand3.Enabled=.F.
Command2(修改部分)按钮的Click添加代码如下:
this.Enabled=.F.
state=2
thisform.grid1.AllowAddNew=.F.
thisform.grid1.ReadOnly=.F.
mand1.Enabled=.F.
mand3.Enabled=.F.
按钮对象Command3(删除部分)的Click事件过程代码如下:
answer=MESSAGEBOX("真的要删除当前记录吗?
",4+32,"确认删除">
IFanswer=6
DELETE
ENDIF
thisform.Refresh
按钮对象Command4(保存部分)的Click事件过程代码如下:
IFstate=1.or.state=2&&如果以前正处于添加或修改状态
FLUSH&&将表中的数据存入磁盘
ENDIF
mand1.Enabled=.T.
mand2.Enabled=.T.
mand3.Enabled=.T.
thisform.grid1.ReadOnly=.T.
thisform.grid1.AllowAddNew=.T.
按钮对象Command5(刷新部分)的Click事件过程代码如下:
thisform.Refresh
5、统计报表模块设计
<1)学生成绩报表
运行后如图:
<2)平均分统计报表
运行后显示如图:
6、系统主菜单设计
设计后如图:
查询子菜单:
维护子菜单:
统计报表子菜单:
退出菜单的添加代码如下:
CLEAR
CLOSEALL
CLEAREVENTS&&结束事件循环,与主程序的ReadEvent命令相对
QUIT
7、建立主程序
本系统将主文件设置为一个程序文件m.prg,为该程序文件设置如下代码:
CLOSEALL&&关闭所有已打开窗口
CLEARALL&&清除所有内容
SETTALKOFF
_screen.Caption="学生信息管理系统"
_screen.Visible=.F.
DOFORMform_cover.scx&&调用封面窗口
*READEVENTS&&建立事件响应循环
SETSYSMENUTODEFAULT&&恢复VFP默认的系统菜单
8、建立主程序
她一般可以设置初始环境、调用应用系统的用户界面、控制事件循环;本系统将主文件设置一个程序文件名为main.prg,为该程序文件设置如下代码:
CLOSEALL&&关闭所有已打开窗口
CLEARALL&&清除所有内容
SETTALKOFF
_screen.Caption="学生信息管理系统"
_screen.Visible=.F.
DOFORMform_cover.scx&&调用封面窗口
*READEVENTS&&建立事件响应循环
SETSYSMENUTODEFAULT&&恢复VFP默认的系统菜单
四、连编成应用程序系统
在项目管理器中,单击“连编”,选定“重新编译全部文件”复选框,及“连编可执行文件”单选项,系统开始连编,生成一个扩展名为EXE的文件Xscjxt.exe<改名为学生信息管理.exe>,退出FVP环境,运行学生信息管理.exe即可执行学生信息管理主程序。
五、系统设计的体会:
1、设计过程遇到的问题与解决方案:
设计过程中遇到的最大问题就是不能照书上的代码编系统,照着书本中的例子做时,发现书上的代码很多错误,运行后常出错。
检查后发现不是代码写错就是漏输代码,重写代码后问题得到解决,有些问题通过同学间的讨论交流也得到解决。
2、系统设计心得:
此次系统设计使我们更了解了数据库的基本知识以及更熟练了VFP的操作,同时更巩固了我们对“技术及应用”课堂内容的知识。
通过系统的制作,更加强了我们的制作能力、合作完成能力、与同学讨论交流的能力、VFP的操作能力以及遇到问题的解决能力等。
但因为是初次制作系统,也受所掌握知识的内容的限制,仍有许多地方不足,如未能使所作系统的功能更全面,像密码的修改功能在系统中没有制作。
这些都要在以后的学习过程中,不断的提高自己的能力。
通过这次课程设计,已经掌握了学习VFP的学习办法,有助于以后继续深化自己。
使自己掌握更多的编程知识。