《班级学生信息管理系统学士学位论文.doc》由会员分享,可在线阅读,更多相关《班级学生信息管理系统学士学位论文.doc(32页珍藏版)》请在三一办公上搜索。
1、编号 学士学位论文班级学生信息管理系统学生姓名:玉苏普麦麦提敏 学 号 20061001060 系 部:信息工程技术系 专 业:计算机科学与技术 年 级:2006-1班 指导教师:居来提买买提明 完成日期:2011 年05月25日中文摘要班级学生信息管理系统的开发主要包括后台数据库的建立和前端应用程序的开发两个方面。对于前者要求建立起数据一致性和完整性强、数据安全性好的数据库。而对于后者则要求应用程序功能完备,易使用等特点。经过分析,我采用微软公司的visual studio 2008中的c#语言平台开发,后台建立在Microsoft office access2003基础上,建立系统应用原型
2、,然后,对初始原型系统进行需求迭代,不断修正和改进,直到形成比较高可行性系统。通过对计算机硬件和软件方面的了解,来论证本系统的解决方案。在指导老师的大力帮助下,基本上完成了设计任务的要求。关键词: 数据;数据库。 目录中文摘要1引言31.学生信息管理系统41.1系统功能模块设计41.2 各模块功能41.2.1 系统模块41.2.2 个人信息模块41.2.3 成绩信息管理51.2.4 用户设计52.数据库设计62.1创建数据库62.2 设计表63.页面设计83.1登录界面83.2主窗口界面83.3添加个人信息窗口界面93.4查询个人信息窗口界面103.5主窗口界面103.6主窗口界面113.7主
3、窗口界面114.代码124.1登陆模块124.2添加个人信息模块144.3查询个人信息模块204.4删除个人信息模块264.5添加用户模块28结束语30参考文献31致谢32引言当今时代是飞速发展的信息时代,在各行各业中离不开信息处理,这正是计算机被广泛应用于信息管理系统的环境。计算机的最大好处在于利用它能够进行信息管理。使用计算机进行信息控制,不仅提高了工作效率,而且大大的提高了其安全性。尤其对于复杂的信息管理,计算机能够充分发挥它的优越性。 信息管理系统是进行信息的采集、存储、加工、维护和使用的系统,它是随着管理科学和技术科学的发展而形成的。学生信息管理是一个教育单位不可缺少的部分,它的内容
4、对于学校的决策者和管理者来说都至关重要,所以学生信息管理系统应该能够为用户提供充足的信息和快捷的查询手段。 随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。作为计算机应用的一部分,使用计算机对学生成绩信息进行管理,有着检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等优点。这些优点能够极大地提高学生信息管理的效率。因此,开发这样的一套信息管理系统成为很有必要的事情。 学生信息管理系统提供了强大的学生信息管理与分析管理功能,方便系统管理员对学生成绩,个人信息等信息的添加、修改、删除、查询等操作学习的交流
5、。1.学生信息管理系统该软件分四个主要功能块:即 用户信息管理、成绩信息管理、个人信息管理以及系统管理。1.1系统功能模块设计学生信息管理系统系统设计登 陆用户设计推出个人信息成绩设计重启添加修改删除查询添加添加修改查询密码删除按照结构化程序设计的要求,得到下图的系统功能模块图:1.2 各模块功能1.2.1 系统模块主要是实现对系统的重启和退出等操作。1.2.2 个人信息模块主要是实现对学生个人信息的管理。包括学生个人信息的添加,修改,删除,查询等操作。1、添加个人信息子模块: 点击上方“个人信息”使下方出现“添加”的字样;再在对应的对话框里录入包括:学号、姓名、性别、班级、家庭住址、联系电话
6、、政治面貌、民族、图像、家长姓名、家长联系电话、家长工作单位、备注等信息,再点击下方的“添加”按钮,这样信息就可以保存到数据库里面。2、修改个人信息子模块:点击上方“个人信息”使下方出现“修改”的字样;单击下面现实的表格里面单击需要修改的记录,这样就可以显示相应的数据再进行对应的修改包括:学号、姓名、性别、班级、家庭住址、联系电话、政治面貌、民族、图像、家长姓名、家长联系电话、家长工作单位、备注等信息,再点击下方的“修改”按钮,这样信息就可以完成数据修改操作。3、 删除个人信息子模块:点击上方“个人信息”使下方出现“删除”的字样;再在对应的对话框里录入包括:学号,再点击下方的“删除”按钮,这样
7、就可以完成对学生记录的删除操作。4、查询个人信息子模块:点击上方“个人信息”使下方出现“查询”的字样;先选择对应的查询条件, 再在对应的对话框里录入内容,再点击 “查询”按钮,这样就可以完成对学生记录的查询操作。1.2.3 成绩信息管理实现对学生成绩的管理。包括对各个学生的成绩进行添加、修改、删除;且根据不同条件查询成绩。1、添加成绩信息子模块:点击上方“成绩信息”使下方出现“添加”的字样;再在对应的对话框里录入,再点击下方的“添加”按钮,这样信息就可以保存到数据库里面。2、修改成绩信息子模块:点击上方“成绩信息”使下方出现“修改”的字样;单击下面现实的表格里面单击需要修改的记录,这样就可以显
8、示相应的数据再进行对应的修改,再点击下方的“修改”按钮,这样信息就可以完成数据修改操作。3、成绩信息查询子模块:点击上方“成绩信息”使下方出现“查询”的字样;先选择对应的查询条件, 再在对应的对话框里录入内容,再点击 “查询”按钮,这样就可以完成对学生成绩的查询操作。1.2.4 用户设计主要是实现对用户信息的管理。包括用户信的添加,修改密码,删除,等操作。1、添加用户信息子模块: 点击上方“用户信息”使下方出现“添加”的字样;再在对应的对话框里录入包括:用户名、密码、确认密码、等信息,再点击下方的“添加”按钮,这样信息就可以完成用户的天价操作。2、修改用户信息子模块:点击上方“用户信息”使下方
9、出现“修改密码”的字样;再在对应的对话框里录入包括:用户名、旧密码、新密码、确认密码、等信息,再点击下方的“修改”按钮,这样信息就可以完成数据修改操作。3、 删除用户信息子模块:点击上方“个人信息”使下方出现“删除”的字样;再在对应的对话框里录入包括:用户名、密码,再点击下方的“删除”按钮,这样就可以完成对学生记录的删除操作。2.数据库设计2.1创建数据库 在设计数据库表结构之前,先要创建一个数据库。本系统使用的数据库为bxshxxglxtdatabase(Access表)2.2 设计表根据系统的功能要求,本系统数据库采用Microsoft Access,它不但适合工作的需要,而且它所支持的数
10、据类型十分丰富,维护简单,费用较低,人员素质要求不高,容易升级。在学生信息管理系统的数据库bxshxxglxtdatabase 中,需要包含用户表、基本信息表、图像表、学生成绩的信息表。各表的结构如表1-1到表1-4所示。表1-1 用户表字段名字段说明类型宽度备注yhm用户名文本15主关键字mm密码文本10不能为空表1-2 学生基本信息表字段名字段说明类型宽度备注xh学号文本主关键字xm姓名文本不能为空xb性别文本不能为空chshrq出生日期日期/ 时间不能为空bj班级文本zhzhmm政治面貌文本mz民族文本lxdh联系电话文本jtdzh家庭地址文本jzhxm家长姓名文本jzhlxdh家长联系
11、电话文本jzhgzdw家长工作单位文本bzh备注文本表1-3 学生成绩表字段名字段说明类型宽度备注xh学号文本不能为空chj1成绩1文本3可以为空chj2成绩2文本3可以为空chj3成绩3文本3可以为空chj4成绩4文本3可以为空chj5成绩5文本3可以为空chj6成绩6文本3可以为空chj7成绩7文本3可以为空chj8成绩8文本3可以为空chj9成绩9文本3可以为空chj10成绩10文本3可以为空chj11成绩11文本3可以为空chj12成绩12文本3可以为空chj13成绩13文本3可以为空chj14成绩14文本3可以为空chj15成绩15文本3可以为空chj16成绩16文本3可以为空chj
12、17成绩17文本3可以为空chj18成绩18文本3可以为空chj19成绩19文本3可以为空chj20成绩20文本3可以为空chj21成绩21文本3可以为空表1-4 学生图像表字段名字段说明类型宽度备注xh学号文本11主关键字tx图像OLE对象不能为空3.页面设计3.1登录界面 在对应的文本框输入用户名和密码,如果输入的密码的用户名正确才能可以登录并且显示主界面。 图 - 1 登陆界面 3.2主窗口界面单击在菜单中的各个选项,可以打开相应的窗口界面。在个窗口可以进行相应的操作。图 2 主窗口 3.3添加个人信息窗口界面在对应的文本框和选项输入相应的内容,可以进行添加个人信息的操作。如果输入的学号
13、(主码)已存在,则不能进行添加个人信息操作的。 图 3 添加个人信息窗口3.4查询个人信息窗口界面在对应的条件下输入相应的内容,才能可以进行查询操作。 图 - 4 查询个人信息窗口3.5主窗口界面在对应的文本框输入相应的内容,如果输入的学号已存在,则不能进行添加成绩信息的操作。 图 5 添加学生成绩窗口3.6主窗口界面在文本框输入学号,可以进行删除学生记录的操作。 图 6 删除学生窗口3.7主窗口界面在对应的文本框输入相应的内容,可以进行添加用户的操作。如果输入的用户名已存在,则不能进行添加用户的操作。 图 7 添加用户窗口4.代码4.1登陆模块using System;using Syste
14、m.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Windows.Forms;using System.Data.OleDb;namespace bjxshxxglxt public partial class dl : Form public dl() InitializeComponent(); string strCon = Provider=Microsoft.J
15、et.OLEDB.4.0;Data Source=D:File班级学生信息管理系统bjxshxxglxtdatebase.mdb; private void tuichubtn_Click(object sender, EventArgs e) Application.Exit(); private void denglubtn_Click(object sender, EventArgs e) OleDbConnection connection = new OleDbConnection(strCon); if (yhmtxt.Text != & mmtxt.Text != ) try c
16、onnection.Open(); string strRead = select * from yonghu where yhm= + yhmtxt.Text + and mm= + mmtxt.Text + ; OleDbCommand cmdRead = new OleDbCommand(strRead, connection); OleDbDataReader DR = cmdRead.ExecuteReader(); if (DR.Read() = true) mainform MF = new mainform(); this.Hide(); MF.Show(); else msg
17、Box(用户名或密码错误!); txtClear(); DR.Close(); connection.Dispose(); connection.Close(); catch(OleDbException CW) msgBox(CW.ToString(); else msgBox(请输入用户名和密码!); public void msgBox(string msg) MessageBox.Show(msg, 提示, MessageBoxButtons.OK, MessageBoxIcon.Information); private void txtClear() yhmtxt.Clear();
18、 mmtxt.Clear(); 4.2添加个人信息模块public partial class tjgrxx : Form public tjgrxx() InitializeComponent(); private void tianjiabtn_Click(object sender, EventArgs e) string xuehao = GetText(xhtxt); string xingming = GetText(xshxmtxt); string lianxidh = GetText(lxdhtxt); string banji = GetText(bjtxt); strin
19、g jiatingdzh = GetText(jtdzhtxt); string jiazhangxm = GetText(jzhxmtxt); string jiazhangdh = GetText(jzhlxdhtxt); string jiazhanggzdw = GetText(jzhgzdwtxt); string beizhu = GetText(beizhutxt); string xingbie = GetCmbText(xbcmbBox); string minzu = GetCmbText(mzcmbBox); string zhengzhimm = GetCmbText(
20、zhzhmmcmbBox); string strOFImg = GetTxtOF(openFileDialog1); OleDbConnection connection = new OleDbConnection(strCon); if (xhtxt.Text != & xshxmtxt.Text != ) try connection.Open(); string strRead = select xh from jibenxinxi where xh= + xhtxt.Text + ; OleDbCommand cmdRead = new OleDbCommand(strRead, c
21、onnection); OleDbDataReader DR = cmdRead.ExecuteReader(); if (DR.Read() != true) string strInsert = insert into jibenxinxi (xh,xm,xb,chshrq,zhzhmm,mz,lxdh,bj,jtdzh,jzhxm,jzhlxdh,jzhgzdw,bzh) values( + xuehao + , + xingming + , + xingbie + , + dateTimePicker1.Value + , + zhengzhimm + , + minzu + , +
22、lianxidh + , + banji + , + jiatingdzh + , + jiazhangxm + , + jiazhanggzdw + , + jiazhangdh + , + beizhu + ); OleDbCommand cmdInsert = new OleDbCommand(strInsert, connection); cmdInsert.ExecuteNonQuery(); if (pictureBox1.Image != null) SaveImage(strOFImg, xuehao, connection); msgBox(添加成功!); DgvFreshu
23、p(); txtClear(); cmdInsert.Dispose(); else msgBox(该学号已存在!); connection.Close(); catch (OleDbException CW) msgBox(CW.ToString(); connection.Dispose(); connection.Close(); else msgBox(请输入学号和姓名!); private void quxiaobtn_Click(object sender, EventArgs e) txtClear(); private void lltxbtn_Click(object sen
24、der, EventArgs e) try Read_Image(openFileDialog1, pictureBox1); catch MessageBox.Show(加载图片出错); private void tjgrxx_Load(object sender, EventArgs e) DgvFreshup(); private void xhtxt_KeyPress(object sender, KeyPressEventArgs e) if (e.KeyChar != 8 & !char.IsDigit(e.KeyChar) MessageBox.Show(只能输入数字, 提示,
25、MessageBoxButtons.OK, MessageBoxIcon.Information); e.Handled = true; public void msgBox(string msg) MessageBox.Show(msg, 提示, MessageBoxButtons.OK, MessageBoxIcon.Information); private void txtClear() xhtxt.Clear(); xshxmtxt.Clear(); bjtxt.Clear(); lxdhtxt.Clear(); jtdzhtxt.Clear(); jzhxmtxt.Clear();
26、 jzhlxdhtxt.Clear(); jzhgzdwtxt.Clear(); beizhutxt.Clear(); xbcmbBox.SelectedIndex = 0; mzcmbBox.SelectedIndex = 0; zhzhmmcmbBox.SelectedIndex = 0; dateTimePicker1.Value = DateTime.Today; pictureBox1.Image = null; public void Read_Image(OpenFileDialog openF, PictureBox MyImage) openF.Filter = *.jpg|
27、*.jpg|*.bmp|*.bmp; if (openF.ShowDialog() = DialogResult.OK) try MyImage.Image = System.Drawing.Image.FromFile(openF.FileName); catch MessageBox.Show(您选择的图片不能被读取或文件类型不对!, 错误, MessageBoxButtons.OK, MessageBoxIcon.Warning); public void SaveImage(string strImg, string xh, OleDbConnection con) FileStrea
28、m fs = new FileStream(strImg, FileMode.Open, FileAccess.Read); BinaryReader br = new BinaryReader(fs); byte imgBytesIn = br.ReadBytes(int)fs.Length); StringBuilder strB = new StringBuilder(); strB.Append(insert into tuxiang (xh,tx) values( + xh + ,Photo ); OleDbCommand cmd = new OleDbCommand(strB.To
29、String(), con); cmd.Parameters.Add(Photo, OleDbType.Binary).Value = imgBytesIn; cmd.ExecuteNonQuery(); private string GetText(TextBox TB) string strText = null; if (TB.Text != ) strText = TB.Text; return strText; private string GetCmbText(ComboBox CmbBox) string strCom = null; if (CmbBox.SelectedInd
30、ex != 0 & CmbBox.SelectedIndex = CmbBox.Items.Count) strCom = CmbBox.SelectedItem.ToString(); return strCom; private string GetTxtOF(OpenFileDialog OF) string strOF = null; if (OF.FileName != ) strOF = OF.FileName; return strOF; public void dgvwidth(DataGridView dg) dg.Columns0.Width = 80; dg.Column
31、s1.Width = 170; dg.Columns2.Width = 40; dg.Columns3.Width = 80; dg.Columns4.Width = 80; dg.Columns5.Width = 60; dg.Columns6.Width = 80; dg.Columns7.Width = 220; dg.Columns8.Width = 80; dg.Columns9.Width = 130; dg.Columns10.Width = 80; dg.Columns11.Width = 200; dg.Columns12.Width = 200; private void
32、DgvFreshup() OleDbConnection connection = new OleDbConnection(strCon); try string strRead = select xh as 学号, xm as 姓名, xb as 性别, chshrq as 出生日期, bj as 班级, zhzhmm as 政治面貌 , mz as 民族, lxdh as 联系电话, jtdzh as 家庭地址, jzhxm as 家长姓名, jzhlxdh as 家长电话, jzhgzdw as 家长工作单位, bzh as 备注 from jibenxinxi ; OleDbDataA
33、dapter DA = new OleDbDataAdapter(strRead, connection); DataSet DS = new DataSet(); DA.Fill(DS); dataGridView1.DataSource = DS.Tables0; dgvwidth(dataGridView1); catch (OleDbException CW) msgBox(CW.ToString(); 4.3查询个人信息模块private void chaxunbtn_Click(object sender, EventArgs e) OleDbConnection connection = new OleDbConnection(strCon); if (tjcmbBox.SelectedIndex != 0) connection.Open(); switch (tjcmbBox.SelectedIndex)