学生学籍管理系统本科毕业论文.doc

上传人:laozhun 文档编号:4023272 上传时间:2023-04-01 格式:DOC 页数:61 大小:312.50KB
返回 下载 相关 举报
学生学籍管理系统本科毕业论文.doc_第1页
第1页 / 共61页
学生学籍管理系统本科毕业论文.doc_第2页
第2页 / 共61页
学生学籍管理系统本科毕业论文.doc_第3页
第3页 / 共61页
学生学籍管理系统本科毕业论文.doc_第4页
第4页 / 共61页
学生学籍管理系统本科毕业论文.doc_第5页
第5页 / 共61页
点击查看更多>>
资源描述

《学生学籍管理系统本科毕业论文.doc》由会员分享,可在线阅读,更多相关《学生学籍管理系统本科毕业论文.doc(61页珍藏版)》请在三一办公上搜索。

1、重庆市高教自考本科毕业论文学生学籍管理系统考 生 单 位 重庆电子工程职业学院 邮 编 电话 专 业 名 称 计算机及应用 论文提交日期 2014年4月29日 主 考 单 位 西南大学 2014 年 4 月 22 日目录第一章 概述11.1开发背景11.2开发环境21.3系统运行环境2第二章 需求分析22.1功能需求22.2性能需求2第三章 可行性分析33.1 面向对象的程序设计3第四章 流程图44.1登陆系统:54.2学生注册管理系统:54.3教学计划管理系统:64.4学生成绩管理系统:74.5毕业管理管理系统:7第五章 数据库设计85.1 ACCESS数据库的主要特征95.2 数据库需求分

2、析95.3 数据字典10第六章 系统设计126.1 用户登陆模块的创建126.1.1 用户登陆136.1.2 用户注册156.2 学生注册管理模块的创建176.2.1 学生注册176.2.2 学生变动226.3 教学计划管理的创建266.3.1 添加课程信息266.3.2 课程信息浏览/修改课程信息326.4 学生成绩管理的创建386.4.1 学生成绩录入386.4.2 学生成绩浏览456.4.3 学生成绩查询53参考文献57致谢57学生学籍管理系统摘要:学生学籍管理系统是典型的管理信息系统,其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于前者要求建立起数据1致性和完整

3、性强、数据安全性好的库。而对于后者则要求应用程序功能完备,易使用等特点。本系统主要完成对学生注册管理;教学计划管理;学生成绩管理;毕业管理等4个方面。系统可以完成对各类信息的浏览、查询、添加、删除、修改等功能。系统的核心是添加、修改和删除3者之间的联系,每1个表的修改都将联动的影响其它的表,当完成添加或删除操作时系统会自动地完成学籍的修改。查询功能也是系统的核心之1,在系统中主要根据学生姓名和学号进行查询,其目的都是为了方便用户使用。系统有完整的用户添加、删除和密码修改功能。 关键字:管理信息系统;数据库运用;Microsoft Visual Studio 2010运用第一章 概述1.1开发背

4、景 由于时代的不断进步,科学技术、管理方法的不断进步,传统的办公方式、方法和手段已经不能适应现代化管理的需要,学籍管理的计算机化已成为高校管理现代化、决策科学化的一个重要环节,是开创学籍管理工作新局面的必由之路。解决了原来手工的管理模式容易出错,易混淆,不容易保存的劣势,从而提高了学校的管理学生信息的工作效率。使用计算机管理系统不仅可以简化学校传统的管理模式,使学校管理人员能够方便地利用学校内部信息对学生个人基本信息进行全面管理,对学生在校档案、学生在校情况进行全面管理。1.2开发环境 基于在大学现阶段的学习,和平时对开发软件系统的操作,在这里我使用了最常用的Microsoft Visual

5、Studio 2010来开发整个系统。1.3系统运行环境Microsoft Visual Studio 2010 Windows环境下单机运行 第二章 需求分析2.1功能需求要求系统能完成:(1) 学生注册管理。包括新生录入、学生注册、学生变动等管理。(2) 教学计划管理。包括教学计划的录入、修改、查询和输出。(3) 学生成绩管理。包括成绩录入,校对、查询和输出。(4) 毕业管理。能根据教学计划自动完成毕业班学生的学分计算、审核、输出毕业生成绩登记表和毕业生名册。2.2性能需求 学生学籍管理系统应满足一下性能需求:1. 系统处理的准确性和及时性系统处理的准确性和及时性是系统的必要性能。在系统设

6、计和开发过程中,要充分考虑系统当前和将来可能承受的工作量,使系统的处理能力和响应时间能够满足学校对信息处理的需求。2.系统的开放性和系统的可扩充性学生信息管理系统在开发过程中,应该充分考虑以后的可扩充性。而要实现这一点,应通过系统的开放性来完成,既系统应是一个开放系统,只要符合一定的规范,可以简单的加入和减少系统的模块,配置系统的硬件。通过软件的修补、替换完成系统的升级和更新换代。3.系统的易用性和易维护性 学生信息管理系统使用人员往往对计算机并不是非常熟悉。这就要求系统能够提供良好的用户接口,易用的人机交互界面。要实现这一点,就要求系统应该尽量使用用户熟悉的术语和中文信息的界面;针对用户可能

7、出现的使用问题,要提供足够的帮助,缩短用户对系统熟悉的过程。第三章 可行性分析由于本系统管理的对象单一,都是学生,且每个数据内容具有较强的关联性,涉及的计算过程不是很复杂。因此,比较适合于采用数据库管理。在技术难度方面,由于有指导老师的指导和相关参考文献,特别是网上资料,特别是参考其它程序的功能,因此完全可以实现。本系统的设计是在Win7操作系统环境下,使用Visual Studio 2010开发成功的。Visual Studio具有以下特点:3.1 面向对象的程序设计 1、面向对象设计不再是单纯的从代码的第一行一直编到最后一行,而是考虑如何创建类和对象,利用类和对象来简化程序设计,并提供代码

8、的封装和可重用性,便于程序的维护与扩展。2、所谓的对象是一种抽象的名称,用来对应实现世界存在的“东西”。一个窗口、一个按钮、一个菜单都可视为一个对象,而按钮对象、菜单对象、又会出现在窗口对象中,因此按钮对象、菜单对象便是窗口的组件之一。对象内部的数据是不能随意更改的,必须由外部向其传递信息,再由对象按其方法加以处理。用户无需知道其任何细节,操作是封闭的,对象之间能通过函数调用相互通信。3、类可视为一个产品模具、一个模块。在面向对象设计中,类是对象的原型,是对象的制作器。类的概念是面向对象程序设计最重要的特征。所谓类,是指由数据结构及其相关操作所形成的集合,描述该类任一对象的共同的行为特征,是对

9、一组性质相同的对象的程序描述,概括了对象的共同性质和数据。4、面向对象设计的核心是类的设计。例如:可以定义一个“成绩查询”类,该类中可以定义查询的姓名、学号、班级等信息,则以此类为原型可以设计出众多的“成绩查询”类的对象实例,这些实体都具有类中所定义的特征。第四章 流程图4.1登陆系统:开始用户登陆失败按取消退出程序成功 登陆系系统1 图3-14.2学生注册管理系统: 1取消添加/删除确认添加/删除添加/删除学生取消注册保存信息注册信息取消录入填写信息保存录入新生录入学生注册学生变动学生注册管理系统 图3-24.3教学计划管理系统: 1教学计划管理系统教学录入修改教学信息查询教学信息取消录入添

10、加教学信息保存录入图3-34.4学生成绩管理系统: 1 2学生成绩管理系统成绩录入查询成绩信息取消录入添加成绩信息保存录入图3-44.5毕业管理管理系统: 1毕业管理系统 2显示毕业生名册分析成绩判断毕业未能毕业信息显示毕业信息图3-5第五章 数据库设计 数据库在一个信息管理系统中占有非常重要的位置,数据库结构设计的好坏将直接对应用系统的效果产生影响。合理的数据库设计可以提高数据库存储效率,保证数据的完整和一致。同时合理的数据结构也将有利于程序的实现。5.1 ACCESS数据库的主要特征 Microsoft Access 2000使您容易得到所需信息,并提供强大工具,可以帮助您组织和共享您的数

11、据库,以便您和您的工作组能作出更好的决策。快速找到可靠答案,通过Intranet共享信息,建立更快更有效的商业解决方案。5.2 数据库需求分析 用户信息:包括的数据项有:用户号、姓名、密码、身份。 学生信息:包括的数据项有:学生学号、学生姓名、性别、出生日期、班级名称、 入学年份、学籍编号、政治面貌编号、身份证号、民族编号、家庭地址、照片、照片名称等。 学籍代码表:包括的数据项有:学籍编号、学籍等。 成绩表:包括的数据项有:编号、学号、课程编号、成绩、考试性质编号等。 考试性质表:包括的数据项有:考试性质编号、考试性质等 课程信息:包括的数据项有:课程编号、课程名称、教师、学分、学时等学生学籍

12、管理系统用户信息学生信息课程信息成绩信息 数据库 图4-1 学生学籍管理系统数据流程图5.3 数据字典在系统设计过程中,首先要建立的就是数据库。本数据库采用SQL Server 2000来构造,共使用了7个表,它们分别是用户信息表(UserInfo)、学生信息表(StuInfo)、班级信息表(Class)、专业信息表(Major)、学院信息表(Depart)、课程信息表(Lesson)、学生成绩表(Result)。1 用户信息表(UserInfo):字段名数据类型说明是否为空是否为关键字UserID文本用户名Not NullPrimary KeyUserPWD文本用户密码Not NullUse

13、rName文本姓名Not NullUserPower文本使用权限Not Null2 学生信息表(StuInfo):字段名数据类型说明是否为空是否为关键字SID文本学号Not NullPrimary KeySName文本姓名Not NullSGender文本性别Not NullSPlace文本籍贯Not NullSBirthday日期/时间出生日期Not NullSMinzu文本民族Not NullSZhengzhi文本政治面貌Not NullSDormitory文本寝室号码Not NullSAddress文本家庭住址Not NullSCode文本邮政编码Not NullSTel文本联系电话No

14、t NullSRemark备注备注Not Null3 班级信息表(Class):字段名数据类型说明是否为空是否为关键字ID文本班级代码Not NullPrimary Key4 专业信息表(Major):字段名数据类型说明是否为空是否为关键字ID文本专业代号Not NullPrimary KeyName文本专业名称Not Null5 学院信息表(Depart):字段名数据类型说明是否为空是否为关键字ID文本学院代号Not NullPrimary KeyName文本学院名称Not Null6课程信息表(Lesson):字段名数据类型说明是否为空是否为关键字ID文本课程代号Not NullPrima

15、ry KeyName文本课程名称Not NullTime文本课时Not NullMark 文本学分Not Null7学生成绩表(Result):字段名数据类型说明是否为空是否为关键字ID文本学生学号Not NullPrimary KeyName文本课程名称Not NullPrimary KeyScore文本分数Not NullRemark文本备注Not Null第六章 系统设计6.1 用户登陆模块的创建系统管理模块主要实现: 用户登录。 注册用户。6.1.1 用户登陆系统启动后,将首先出现如下所示的用户登陆窗体,用户首先输入用户名,然后输入密码。用户登陆窗体中放置了两个文本框,用来输入用户名和

16、用户密码。两个按钮用来确定或者取消登陆。2个标签用来标示窗体的信息。为窗体定义全局变量,用来判断登陆是否成功,代码如下:private void button1_Click(object sender, System.EventArgs e)if (textBox1.Text.Trim()= | textBox2.Text.Trim()=)MessageBox(0,请?输?入?用?户名?及密码?,登?录?失骸?败悒?,0);elsecn.Open();OleDbCommand cmd=new OleDbCommand(,cn);string sql=select RoleName from u

17、serinfo where name=+textBox1.Text.Trim()+ and passwd=+textBox2.Text.Trim()+;cmd.CommandText=sql;string rolename;if (null!=cmd.ExecuteScalar()rolename=cmd.ExecuteScalar().ToString(); this.Visible=false; MainForm mainfrm=new MainForm();mainfrm.Tag=this.FindForm(); sql=select * from Roles where RoleNam

18、e=+rolename+; OleDbDataReader dr; cmd.CommandText=sql; dr=cmd.ExecuteReader();dr.Read(); mainfrm.menuItem16.Visible=(bool)(dr.GetValue(1);mainfrm.menuItem10.Visible=(bool)(dr.GetValue(2);mainfrm.menuItem1.Visible=(bool)(dr.GetValue(3);mainfrm.menuItem2.Visible=(bool)(dr.GetValue(4);mainfrm.menuItem3

19、.Visible=(bool)(dr.GetValue(5);mainfrm.menuItem4.Visible=(bool)(dr.GetValue(6); mainfrm.statusBarPanel2.Text=textBox1.Text.Trim(); mainfrm.ShowDialog(); else MessageBox(0,用?户名?或密码?错洙?误,登?录?失骸?败悒?,0);cn.Close();6.1.2 用户注册用户可以通过点击注册按钮来注册账号,点击“注册”,出现如下所示的窗体 在这两个窗体中放置了三个文本框,用来输入用户名、新密码和确认密码。两了按钮用来确定是否注册

20、密码。四个标签用来标示文本框的内容,单击“注册”按钮,将触发Click事件判断是否注册成功,代码如下:private void button1_Click(object sender, System.EventArgs e)if (textBox1.Text.Trim()= | textBox2.Text.Trim()= | textBox3.Text.Trim()= | comboBox1.Text.Trim()=)MessageBox(0,请?填?写完?整?信?息,提?示?,0);elseif (textBox2.Text.Trim()!=textBox3.Text.Trim()Messa

21、geBox(0,两?次?输?入?密码?不?一?致?,提?示?,0);elsecn.Open(); OleDbCommand cmd=new OleDbCommand(,cn);cmd.CommandText=select * from userinfo where name=+textBox1.Text.Trim()+;if(null=cmd.ExecuteScalar()string sql=insert into userinfo (name,passwd,rolename) values (+textBox1.Text.Trim()+,+textBox2.Text.Trim()+,+co

22、mboBox1.Text.Trim()+);cmd.CommandText=sql;cmd.ExecuteNonQuery();MessageBox(0,新?用?户添?加成功|,提?示?,0);else MessageBox(0,已?有瓺+textBox1.Text.Trim()+用?户存?在,?请?选?择?其?他?名?称?,提?示?,0);cn.Close();private void button2_Click(object sender, System.EventArgs e)this.Close();private void AddUser_Load(object sender, Sy

23、stem.EventArgs e)/MainForm.mainfrm.menuItem17.Enabled=false;DataSet ds=new DataSet();OleDbDataAdapter adp=new OleDbDataAdapter(,cn);adp.SelectCommand.CommandText=select RoleName from Roles;adp.Fill(ds);comboBox1.DataSource=ds.Tables0.DefaultView;comboBox1.DisplayMember=RoleName;comboBox1.ValueMember

24、=RoleName;6.2 学生注册管理模块的创建学生注册管理模块主要实现如下功能: 学生注册 学生变动6.2.1 学生注册学生在成功登录系统后,点击“学生注册管理”可进行学生注册管理,出现如下所示的窗体 在这个窗体中放置了7个文本框,用来输入学号、姓名、联系方式、民族、家庭住址、邮政编码和备注。4个下拉菜单用来选择性别、政治面貌、专业和班级。两了按钮用来确定是否添加学生。代码如下:private Byte getphoto(string photopath)string str=photopath;FileStream file = new FileStream(str,FileMode.O

25、pen, FileAccess.Read);Byte bytBLOBData = new Bytefile.Length; file.Read(bytBLOBData, 0, bytBLOBData.Length);file.Close();return bytBLOBData;private void button1_Click(object sender, System.EventArgs e)if (textBox1.Text.Trim()= | textBox2.Text.Trim()= | comboBox1.Text.Trim()= | textBox4.Text.Trim()=

26、| textBox5.Text.Trim()= | textBox6.Text.Trim()= | comboBox2.Text.Trim()= | textBox8.Text.Trim()= | comboBox4.Text.Trim()=)MessageBox(0,请?填?写完?整?的?学生?信?息,提?示?,0);elseOleDbCommand cmd=new OleDbCommand(select * from studentinfo where StudentNumber=+textBox1.Text.Trim()+,oleDbConnection1);if (null!=cmd.

27、ExecuteScalar() MessageBox(0,学生?学号?重?复,提?示?,0); else string sql1,sql2,sql;sql1=insert into studentinfo (StudentNumber,name,sex,race,address,telephone,role,postalcode,classid;sql2=values (+textBox1.Text.ToString()+,+textBox2.Text.ToString()+,+comboBox1.Text.Trim()+,+textBox4.Text.ToString()+,+textBox

28、5.Text.ToString()+,+textBox6.Text.ToString()+,+comboBox2.Text.Trim()+,+textBox8.Text.ToString()+,+comboBox4.SelectedValue.ToString();if (textBox10.Text.Trim()!=) sql1=sql1+,remark;sql2=sql2+,+textBox10.Text.Trim()+;if (this.pictureBox1.Image!=null)sql1=sql1+,Photo;sql2=sql2+,?;Byte bytBLOBData=getph

29、oto(openFileDialog1.FileName);cmd.Parameters.Add(new OleDbParameter(jpeg,OleDbType.Binary,bytBLOBData.Length,ParameterDirection.Input,true,0,0,null,DataRowVersion.Default,bytBLOBData); sql=sql1+) +sql2+);cmd.CommandText=sql;cmd.ExecuteNonQuery(); MessageBox(0,学生?信?息添?加成功|,提?示?,0); private void tjxs_

30、Load(object sender, System.EventArgs e)oleDbConnection1.Open();OleDbDataAdapter adp=new OleDbDataAdapter(select specialtyname from specialtyinfo,oleDbConnection1);DataSet ds=new DataSet();adp.Fill(ds,specialty);comboBox3.DisplayMember=specialtyname;comboBox3.ValueMember=specialtyname;comboBox3.DataS

31、ource=ds.Tables0.DefaultView;private void comboBox3_SelectedIndexChanged(object sender, System.EventArgs e)if (comboBox3.Text.Trim()!=)OleDbDataAdapter adp=new OleDbDataAdapter(select classid,classname from classinfo where specialtyname=+comboBox3.Text.Trim()+,oleDbConnection1);DataSet ds=new DataSe

32、t();adp.Fill(ds,class);comboBox4.DisplayMember=classname;comboBox4.ValueMember=classid;comboBox4.DataSource=ds.Tables0.DefaultView;private void button2_Click(object sender, System.EventArgs e)this.Close();private void tjxs_Closed(object sender, System.EventArgs e)oleDbConnection1.Close();private voi

33、d pictureBox1_Click(object sender, System.EventArgs e)openFileDialog1.Filter=bmp|*.bmp|gif|*.gif|jpg|*jpg|jpeg|*.jpeg|ico|*.ico;openFileDialog1.ShowDialog();if (openFileDialog1.FileName!=)this.pictureBox1.Image=Image.FromFile(openFileDialog1.FileName);6.2.2 学生变动学生在成功登录系统后,点击“学生变动”可进行修改学生信息管理,出现如下所示的

34、窗体 在这个窗体中放置了7个文本框,用来输入学号、姓名、联系方式、民族、家庭住址、邮政编码和备注。4个下拉菜单用来选择性别、政治面貌、专业和班级。两了按钮用来确定是否修改学生信息。代码如下:private void ModifyStudent_Load(object sender, System.EventArgs e) /this.Text=this.Tag.ToString();oleDbConnection1.Open();OleDbDataAdapter adp=new OleDbDataAdapter(select SpecialtyName from SpecialtyInfo,o

35、leDbConnection1);DataSet ds=new DataSet();adp.Fill(ds,specialty);comboBox3.DisplayMember=SpecialtyName;comboBox3.ValueMember=SpecialtyName;comboBox3.DataSource=ds.Tables0.DefaultView;comboBox3.Text=label13.Text.Trim(); oleDbConnection1.Close();oleDbConnection1.Open();string sql=select photo from Stu

36、dentInfo where StudentId=+this.Tag.ToString();OleDbCommand cmd=new OleDbCommand(sql,oleDbConnection1);if (Convert.DBNull!=cmd.ExecuteScalar()pictureBox1.Image=Image.FromStream(new MemoryStream(Byte)cmd.ExecuteScalar();private void comboBox3_SelectedIndexChanged(object sender, System.EventArgs e)if (

37、comboBox3.Text.Trim()!=)OleDbDataAdapter adp=new OleDbDataAdapter(select ClassId,ClassName from ClassInfo where SpecialtyName=+comboBox3.Text.Trim()+,oleDbConnection1);DataSet ds=new DataSet();adp.Fill(ds,Class);comboBox4.DisplayMember=ClassName;comboBox4.ValueMember=ClassId;comboBox4.DataSource=ds.

38、Tables0.DefaultView;comboBox4.Text=label14.Text.Trim();private Byte getphoto(string photopath)string str=photopath;FileStream file = new FileStream(str,FileMode.Open, FileAccess.Read);Byte bytBLOBData = new Bytefile.Length; file.Read(bytBLOBData, 0, bytBLOBData.Length);file.Close();return bytBLOBData;private void button1_Click(object sender, System.EventArgs e)if (textBox1.Text.Trim()= | textBox2.Text.Trim()= | comboBox1.Text.Trim()= | textBox4.Text.Trim()= | textBox5.Text.Trim

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号