1、浙江长征职业技术学院1目录摘要 2Abstract 2第一章 引言 31.1 构造逻辑模型 31.2 概念结构及数据分析 4第二章 数据库的设计 52.2 设计视图102.3 系统的实现122.3.2 建立成绩档案建立条件控制表单152.3.3 设计学生成绩查询表单182.3.4 设计学生排名查询表单212.4 设计系统报表222.5 主菜单设计232.6 设计系统登录表单24参考文献(References)26浙江长征职业技术学院2学生信息管理系统专 业:计算机信息管理 学 号:学生姓名: 指导教师:摘要学生信息的管理是高校信息系统中不可缺少的一部分。它的存在,大大的减少了用户工作的工作时间
2、,提高了工作的效率。用户在管理过程中,涉及的信息,如学生基本情况,学生所在专业班级的课程设置情况及任课教师的情况等,这许多的信息如果单靠传统的登记方法,将会浪费大量的工作时间,所以,学生管理系统也就显的由为重要。关键词:数据库设计,学生成绩,成绩管理,学生信息。University student information management information systemAbstractUniversity student information management information system is an integral part. Its existence, grea
3、tly reducing the user to work more hours, improve work efficiency. Users in the management process, involving information, such as the basic situation of students, students of classes where the curriculum of professional situations and circumstances such as classroom teachers, a lot of information o
4、n this registration if it relies on traditional methods, will waste a lot of work time Therefore, the student management system also obvious from the important.Keyword:Database design, student achievement, performance management, student information. 浙江长征职业技术学院3第一章 引言高校学生管理是学校管理系统中的重要组成部分。在成绩管理过程中涉及
5、的信息种类繁多,数量庞大。每个学生的系别,不同学期的各门课程成绩,以及各科教师等信息都是成绩管理过程中必须记录和使用的信息。随着高校规模的不断扩大,成绩管理档案的信息量成倍的增长,相应的成绩计算整理,日常维护和查询任务量也越来越大。因此建立一套完善的成绩档案信息的存储,快速整理与检索系统非常必要。用户需求分析用户调在学生信息管理过程中,管理人员的工作是从两个方面入手的。第一是收集和建基本情况信息,分别对每个学生不同学期各门课程的成绩进行记载和整理。学生信息管理是以每个学生为基本单位进行的,即成绩的建立,整理和查询可以具体到每个学生。在学生信息管理过程中,信息的建立和维护是交替进行的,如新生信息
6、录入和毕业信息清除。另外,每学期的课程成绩录入以后也不是一成不变的,如重修或成绩更改等。学生信息管理过程中更大的任务则是根据不同要求对学生成绩进行快速并形成各种报表。1.1 构造系统的逻辑模型构造系统的逻辑模型的工具是数据流程图和数据字典。学生成绩档案管理系统工作流程图如图 1-1 所示。工作准备阶段系别设置情况 课程设置情况学生注册情况 学生成绩登记简历查询与维护 成绩查询与维护学籍处理,学生评定,就业推荐等图 1-1学生管理系统的数据流程图确定以后,还有许多具体的信息,如学生注册信息,系别设置信息,课程设置信息,成绩信息等需要进一不描述,即建立数据浙江长征职业技术学院4字典。学生管理系统数
7、据流程图如图 1-2 所示。成绩管理员 学生及课程信息 成绩管理 学籍处理 成绩管理员图 1-2确定目标系统的功能学生信息管理系统必须具备以下功能:1.基础档案的记录和维护功能通过建立相应的数据文件,记录并保存基本的档案信息。2.分类查询功能3.报表整理功能1.2 概念结构设计及数据分析.1. 数据库建模对现有管理模式的分析,可以提取出以下实体:系别,学生,课程,成绩等。2. 管理描述的设计系别:在管理系统中,高校多以系别为单位进行,在系统数据库中登记数据表,记载校系别设置情况,在数据表中设置“系别编号”字段同记载学生名录的数据表关联。主要设计字段应包括“系别名称”和“系别编号” 。学生:记载
8、学生的基本自然属性和社会属性如姓名,性别,出生日期,政治面貌等数据表应设立两个关联字段即“系别号”和“学号” ,通过“系别号:可以同系别名录数据表关联,反映学生的系别归属。通过学籍号同学生成绩表关联,反映学生状况成绩:记载学生+不同学期的各门成绩,每条记录记载一门课程的成绩。该数据表应设立“学号”和“课程编号”两个关联字段。通过学号同学生名录数据表关联,通过课程编号同课程数据表进行关联。课程:记载各个系别所有专业对应学期所开设的课程及任课教师。该数据表的关联字段为“课程编号” ,在该字段上建立主索引,避免出现相同的课程编号。浙江长征职业技术学院5第二章 数据库的设计数据库设计分为逻辑设计和物理
9、设计两个步骤。1.数据库的逻辑设计根据前面得到的各个关系,把它们转化为数据表。成绩表:学号,课程编号,成绩,学分,学期。学生表:系别号,学号,姓名,性别,出生日期,政治面貌,照片,简历,通讯地址,邮政编码,电话号码。课程表:课程编号,课程名称,教师姓名。系别表:系别名称,系别编号。2.数据库的物理设计本数据库拟建 4 个基本数据表和一个系统登录表。数据表名分别为:cjb.dbf,xsjl.dbf.kcb.dbf,xbb.dbf.,sysb.dbf 各数据表结构如下图 2-1 所示。Cjb.dbf 结构表浙江长征职业技术学院6图 2-1表中内容如下浙江长征职业技术学院7Xsjl.dbf 结构表图
10、 2-2内容如下:浙江长征职业技术学院8Kcb.dbf 结构表图 2-3Kcb.dbf 内容如下浙江长征职业技术学院9Xbb.dbf 结构表图 2-4Xbb.dbf 内容如下:浙江长征职业技术学院10Sysb.dbfj 结构表图 2-5Sysb.dbf 表内容如下:2.2 设计视图视图是一个定制的虚拟表。它提供了为各种操作提供数据环境,各个表之间的对应关系,可以在其中直接的体现。为数据库建立视图不但可以检索数据,还可以将更新结果返回给数据库。浙江长征职业技术学院11利用视图设计器,可以快速的为我们创建视图,首先创建一个简历查询试图和成绩查询视图,如下图 2-2-1 所示:简历查询视图 2-2-
11、1浙江长征职业技术学院12成绩查询视图 2-2-2Xjgl.dbc 结构图 2-2-32.3 系统的实现建立学生基本信息表单本表单用界面控件元素构成,如下所示。在“学生基本信息表单”中,用户通过对它进行相应的操作,可以追加和删除记录。此外,表单能直观的显示学生的个人信息如家庭住址,学号,电话号码,出生日期,姓名,性别等等。另外,表单提供了首记录和尾记录的直接查询功能,通过单击首记录按钮,可以跳转到第一个记录;单击末记录按钮,跳转到最后一个记录;单击增加和删除按钮,可以修改表中的记录。单击退出按钮,退出表单。浙江长征职业技术学院13图 2-3-1各控件主要属性设置如下所示:控件名称 控件属性 属
12、性值Form1 caption 学生档案建立AutoCenter .T.label1 caption 系别号label2 caption 姓名label3 caption 出生日期label4 caption 邮政编码label5 caption 通讯地址label6 caption 学号label7 caption 性别label8 caption 政治面貌label9 caption 电话号码label0 caption 照片label11 caption 简历optiongroup1 controlsource xsjl.性别浙江长征职业技术学院14optiongroup1.option
13、1 caption 男optiongroup1.option2 caption 女mand1 caption 首记录mand2 caption 上一条mand3 caption 下一条mand4 caption 末记录mand5 caption 增加mand6 caption 删除mand7 caption 退出image1 controlsource xsjl.照片image1 stretch 2edt 简历 controlsource xsjl.简历combo1 controlsource xsjl.系别号rowsoucetype 6-字段rowsource xbb.系别名,系名txt 学
14、号 controlsource xsjl.学号txt 姓名 controlsource xsjl.姓名txt 出生日期 controlsource xsjl.出生日期txt 政治面貌 controlsource xsjl. 政治面貌txt 电话号码 controlsource xsjl.电话号码txt 通讯地址 controlsource xsjl.通讯地址编写事件代码:“首记录”mand1 的单击 click 事件:GO TOPthisform.Commandgroup2.Command2.Enabled=.Fmand3.Enabled=.Tmand4.Enabled=.T.Thisform
15、.refresh from xjgl!xbb inner join xjgl!xsjl;inner join xjgl!cjb;inner join xjgl!kcb;on kcb.课程编号 =cjb.课程编号; on xbb.系别号 xsjl.系别号;order by xbb.系名,kcb.课程名称,xsjl.学号;where xsjl.学号 thisform.Combol.valuethisform.caption=“学生成绩查询“command2 单击事件:thisform.caption=“学生成绩查询“+“(“-bo2.Value-“)“select xbb.系名,xsjl.姓名,x
16、sjl.性别,kcb. 课程名称,cjb.成绩,;cjb.学分,kcb.教师姓名;from xjgl!xbb inner join xxgl!xsjl;inner join xxgl!cjb;inner join xxgl!kcb;on kcb.课程编号 =cjb.课程编号;on xsjl.学号 =cjb.学号;on xbb.系别号 xsjl.系别号;order by xbb.系名,kcb.课程名称,xsjl.学号;where xbb.系名 thisform.Combo2.valuethisform.caption=“学生成绩查询“command3 单击事件:thisform.caption=
17、“学生成绩查询“+“(“-bo2.Value-“)“select xbb.系名,xsjl.姓名,xsjl.性别,kcb. 课程名称,cjb.成绩,;cjb.学分,kcb. 教师姓名;from xjgl!xbb inner join xxgl!xsjl;inner join xxgl!cjb;inner join xxgl!kcb;on kcb.课程编号 =cjb.课程编号;on xsjl.学号 =cjb.学号;浙江长征职业技术学院21on xbb.系别号 xsjl.系别号;order by xbb.系名,kcb.课程名称,xsjl.学号;where kcb.课程名称 thisform.Comb
18、o3.valuethisform.caption=“学生成绩查询“command4 单击事件:thisform.release &刷新表单显示信息2.3.4 设计学生排名查询表单该表单实现了学生排名情况的查询,通过输入学号,单击确定案钮,表单将显示学生的排名情况,表单界面如下图 2-3-5 所示:图 2-3-5事件代码如下:确定按钮的代码:set safety offuse cjb.dbf &使用 cjb.dbf 表sort to temp on 成绩/D &运用 sort 命令实现排名use tempscan for this form.text1.value=allt(学号) &用 sca
19、n 命令输入学号thisform.label3.captio=str(recno(),1) &对比赋值endscan &结束输入退出事件代码:thisform.release浙江长征职业技术学院222.4.1 设计系统报表数据处理的结果不单是为了在计算机上显示,更重要的是为了打印出来存档。报表是数据库管理系统的最终结果,是数据库功能中的重要一部分,也是常用的查看数据的方法。利用报表向导,我们可以快速便捷的创建报表。图 2-4-1预览如下所示:浙江长征职业技术学院23该报表中,用户可以通过单击打印报表案钮来打印此报表。2.5 主菜单设计主控菜单用来控制系统的各项操作。如图 1-8 所示,在菜单设
20、计器中,建立菜单名称及各菜单的运行方式。除“系统退出”采用命令方式外,其他各项均设置子菜单项,在相应的子菜单项目总调用相应的表单。浙江长征职业技术学院24图 2-5-12.6d 设计系统登录表单系统登录表单主要依据用户输入的密码,控制非法用户进入系统,以此来保证系统的安全性,表单界面控件元素如下图 2-6-1 所示:图 2-6-1各控件的主要属性设置如下:label3 caption 操作员口令label4 caption 欢迎使用学生档案管理系统浙江长征职业技术学院mand1 caption 确定mand1 caption 退出container1 略 略combol controlsour
21、e 无rowsourcetype 6-字段rowsource sysb.bh各控件事件代码如下确定 mand1 的单击事件代码:private Sysmasele sysb &打开系统密码数据表 sysma=allt(this.parent.text1.value) &设置用户密码保存变量loca for allt(xm)=allt(bo1.value) &查找同用户输入相符的记录if found() and allt(sysb.ma)=sysma &对照密码是否相同thisform.cuser=alltrim(sysb.bh) &保存密码到表单属性中thisform.visible=.F.
22、do zkcd.mpr &调用主控菜单read event &激活事物处理thisform.visible=.T. this.parent.txtma.value=“ &清除用户输入的密码elsemessagebox(“用户编号或密码不正确!请重新输入。“,0,“警告“)this.parent.text1.value=“this.parent.text1.setfocus &获得焦点后重新输入endif“退出”mand2 的单击事件代码:thisform.cuser=“ &清空用户密码保存thisform.releaseForm1 的 Unlaod 事件代码:return thisform.c
23、user系统登录表单是系统远行的起点,在此界面上只有通过用户身份验证的用户才可以进入系统进行操作。用户通过输入要选择的操作员,然后输入密码,单击确定按钮,即可进入系统,如果密码输入不正确,则不允许操作。实际上,用户输入的信息直接同数据表中的记录信息进行对比,如果在数据表中可以找到对应的用户登录信息,则系统将启动主控菜单。浙江长征职业技术学院26参考文献(References)1 刘 瑞 新 Visual Foxpro 6.0管 理 信 息 系 统 M 机 械 工 业 出 版 社 2 张 龙 志 V isual Foxpro 6.0 实 用 数 据 库 编 程 M 中 国 科 学 技 术 大学
24、出 版 社 3 吴洪森 实用汉字 dBASEIII 教程M 浙江大学出版社 4 王 能 斌 数 据 库 系 统 教 程 M 电 子 工 业 出 版 社 致谢 : 同过这段时间的努力,终于完成了“学生信息管理系统” ,这首先得感谢这段时间指导了我的刘晓清老师。虽然,在做这个系统时她不是我的现任老师,但在这期间对我们的额外指导,使我能够顺利完成此系统。真的非常感谢她,一年来对我们孜孜不倦的教诲。以上的这个系统,能满足平常操作的基本要求,如成绩的查询,对学生信息表进行给改,可以添加删除表中的记录,同时,改系统也提供打印功能。通过这次实践,提高了自身解决一定复杂程度的工程实际问题的能力,同时也巩固了我专业方面的知识,树立了正确思维方法,强化了解决工作实际问题的意识