c#学籍管理系统设计报告(共15页).doc
精选优质文档-倾情为你奉上C#课程设计学籍管理系统 学 号: 姓 名: 班 级:软件1班 系 别:信息工程系 指导老师:许向阳 提交时间:2011-1-8 摘 要随着信息技术在管理上越来越深如而广泛的应用,管理信息系统的实施在技术上已经逐步成熟。管理信息系统是一个不断发展的新型学科,任何一个单位要生存要发展,要高效率地把内部活动有机地组织起来,就必须建立与自身特点相适应的管理信息系统。学籍管理系统是一个教育单位不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要,所以学籍管理系统应该能够为用户提供充足的信息和快捷的查询手段。但一直以来人们使用传统人工的方式管理文件档案,这种管理方式存在着许多缺点,如:效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。作为计算机应用的一部分,使用计算机对学生学籍进行管理,具有手工管理所无法比拟的优点.例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高学生学籍管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件。本系统主要完成对系部信息、班级信息、任课教师信息、学生信息、课程信息以有选课记录和成绩等多种数据信息的管理,包括数据库中表的录入、修改、删除等。系统还可以完成对各类信息的查询、录入、修改、删除等功能,其中学籍管理用户包括系统管理员、教师和学生。本系统采用Microsoft的access来设计数据库,并使用当前优秀的开发工具:Microsoft Visual studio c#,它有着最为灵活的数据库结构,对数据库应用有着良好的支持。论文主要介绍了本系统的开发背景,所要完成的功能和开发的过程,重点的说明了系统设计的重点、设计思想。目录第一章 绪论学籍管理是学校管理的重要组成部分,对于学校和政府教育单位来说都至关重要,所以学生学籍管理系统应该能够为用户提供充足的信息和快捷的查询手段。传统的人工方式管理方式效率低、保密性差,不利于查找、更新和维护。使用计算机对学生信息进行管理,能够极大地提高学生管理的效率,节约教育经费,这也是适应学校信息化建设发展趋势的重要因素。作为计算机应用的一部分,使用计算机对学生学籍信息进行管理,具有手工管理所无法比拟的优点。例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高学生学籍管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件。因此,开发这样的管理软件成为很有必要的事情。学生学籍信息管理系统其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面,对于前者要求建立起数据库一致性和完整性、安全性好的数据库。而对于后者则要求应用程序功能完备,易使用的特点。经过分析,使用易于与数据库连接的c# 开发工具,利用其提供的各种面向对象的开发工具,尤其是数据库窗口这一功能强大而简洁操纵数据库的智能化对象,首先在短时间内建立系统应用原形,然后对初始原型系统进行需求分析,不断修正和改进,直到形成用户满意的可行系统。学生学籍管理系统要实现的目标是为学校提供学生管理解决方案,具体目标如下:1) 提高学生信息管理效率,节约管理成本,增强学生管理的安全性。2) 满足学校学生管理的人员、老师和学生的不同层次和不同方面的需要。3) 为学校将来的信息化建设提供必要的支持。总之,通过该系统的建设来提高学校的学生信息管理效率,使得学校的发展能够适应当前的教育信息化建设的中体发展趋势。 第二章 系统功能与应用背景 目前,学校的学籍管理系统已不局限于对学生信息数据库的维护,而是来越多地参与到为其他相关部门提供一些必要的协调与服务。 本系统的主要功能包括以下几个方面: 学生档案管理; 教师信息管理; 学生选课管理; 课程信息管理;2.1 系统预览下图为学生信息管理系统的主界面,通过该界面,可以实现对学生档案、教师信息、学生选课、课程信息等功能的管理。管理员口令:admin 学生口令:xuesheng 下图为学生信息浏览界面,在该界面中,用户可以通过选择教师信息,对其学生信息进行修改、删除等操作。下图为学生档案的浏览界面,进入该界面后,学生的详细信息就显示在窗口中,用户可以完成对学生档案的修改、删除等功能。下图为课程信息的浏览界面,进入该界面后,课程的详细信息就显示在窗口中,用户可以完成对课程信息的修改、删除等功能。 下图为学生选课的浏览界面,进入该界面后,选课的详细信息就显示在窗口中,用户可以完成对选课信息的相关功能。2.2系统设计思想 本实例选用c#作为开发语言,采用结合后台access数据库的C/a机构开发模式,优化了程序代码及结构,提高了程序的运行效率。 实例在。NET环境中进行开发,该环境提供了大量可选择的数据对象,可以很方便地建立与数据库之间的连接,并在此链接的基础上,利用各种常用数据组件对数据进行操作。在本实例中,采用OledbConnection对象与后台数据库创建连接,所有针对数据库的操作都需要利用这个对象最为数据连接对象。第三章 数据库设计3.1 数据库需求分析 在设计数据库结构时,应该尽可能满足用户所提出的各项要求,同时避免冗余数据的产生。由于在学生信息管理系统中采集大量的信息,包括学生信息、教师信息、学生选课、课程信息等。3.2数据库逻辑结构设计系统数据库名称为学生档案管理系统,数据库中包括:1学生表 2教师表 3成绩表 4课程表,下图为各个表的数据结构。第四章 界面实现主界面编码4.1新建类代码using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Data.OleDb;using System.Data;using System.Windows.Forms;namespace 学籍管理系统 class Database OleDbConnection con; /OleDbDataReader ds; public void mycon() con = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory| 董文静 学生档案管理系统.mdb"); public void execute(string sql) con.Open(); try OleDbCommand cmd = new OleDbCommand(sql, con); cmd.ExecuteNonQuery(); catch (Exception ex) throw new Exception(ex.ToString(); finally con.Close(); public DataSet getDataset(string sql) DataSet ds = new DataSet(); con.Open(); try OleDbCommand cmd = new OleDbCommand(sql, con); OleDbDataAdapter da = new OleDbDataAdapter(cmd); da.Fill(ds, "0"); return ds; catch (Exception ex) throw new Exception(ex.ToString(); finally con.Close(); public DataTable getDatatable(string sql) DataTable ds = new DataTable(); con.Open(); try OleDbCommand cmd = new OleDbCommand(sql, con); OleDbDataAdapter da = new OleDbDataAdapter(cmd); da.Fill(ds); return ds; catch (Exception ex) throw new Exception(ex.ToString(); finally con.Close(); public OleDbDataReader getReader(string sql) try con.Open(); OleDbCommand cmd = new OleDbCommand(sql, con); OleDbDataAdapter da = new OleDbDataAdapter(cmd); OleDbDataReader ds = cmd.ExecuteReader(); return ds; catch (Exception ex) throw new Exception(ex.ToString(); public bool Repeat(string sql) try con.Open(); OleDbCommand cmd = new OleDbCommand(sql, con); if (cmd.ExecuteScalar() != null) return true; else return false; catch (Exception ex) throw new Exception(ex.ToString(); finally con.Close(); 4.2修改删除等操作代码 public static string bb = "" public static string strr = "" public FmCource() InitializeComponent(); private void FmCource_Load(object sender, EventArgs e) CmdCource(); showinf(); if (bb = "xuesheng") this.button1 .Enabled = true; this.button2 .Enabled = true; this.button3 .Enabled = true; public void showinf() Database ac = new Database(); ac.mycon(); DataTable ds = ac.getDatatable("select * from 课程"); this.dataGridView1.DataSource = ds.DefaultView; private void button1_Click(object sender, EventArgs e) FmModifyCource ss = new FmModifyCource (); /FmStuAdd.btnj = "添加" ss.ShowDialog(); if (ss.DialogResult = DialogResult.OK) showinf(); public static string str = "" private void button2_Click(object sender, EventArgs e) FmModifyCource ss = new FmModifyCource(); FmModifyCource.bb = "修改" try str = this.dataGridView10, this.dataGridView1.CurrentCell.RowIndex.Value.ToString(); catch MessageBox.Show("操作错误!", "提示"); return; /ss.ShowDialog(); if (ss.ShowDialog() = DialogResult.OK) showinf(); private void button3_Click(object sender, EventArgs e) if (strr != "") if (MessageBox.Show("您确定要删除该学生的信息吗?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Warning) = DialogResult.Yes) Database ac = new Database(); ac.mycon(); ac.execute("delete from 学生 where 学号='" + strr + "'"); showinf(); MessageBox.Show("删除成功!", "提示"); strr = "" else MessageBox.Show("请选中要删除的用户", "提示"); private void button4_Click(object sender, EventArgs e) this.Close(); private void button5_Click(object sender, EventArgs e) Database db = new Database(); db.mycon(); DataTable ds = db.getDatatable("select * from 课程 where 课程.课程名称='" + boBox1.Text.ToString() + "' order by 课程编号"); this.dataGridView1.DataSource = ds.DefaultView; private void dataGridView1_Click_1(object sender, EventArgs e) strr = this.dataGridView10, this.dataGridView1.CurrentCell.RowIndex.Value.ToString(); private void CmdCource() Database db = new Database(); db.mycon(); DataTable ds = db.getDatatable("select 课程编号,课程名称 from 课程"); boBox1.DisplayMember = "课程名称" boBox1.ValueMember = "课程编号" boBox1.DataSource = ds.DefaultView; 第五章 结束语5.1 总结经过两周的设计,学生学籍管理系统基本开发完成,该系统是高校典型的信息管理系统,功能十分強大的管理系统,它集各种功能用于一身,在系统的各个模块中体现了它的功能,针对高校学生学籍工作方面进行设计的,同时该系统也是为了方便于管理员、教师和学生的一些信息操作,为高校节省了管理成本,提高学校的工作效率。该系统的界面简单大方,非常方便用户的操作,同时,也为以后系统的扩展留出了足够的空间。在本系统的设计过程中,首先通过对学籍管理系统功能进行详细的分析,得到系统功能模块图,然后根据系统功能分析,围绕它进行系统的设计,介绍开发环境和开发技术,再可行性分析、功能和性能需求,然后得出系统业务流图、数据流图、E-R图,并进行数据库的设计和模块化的实现。由于之前没学过VB,仅利用自己的课余学习,经过这次系统设计过程,加深了对它的认识.完成本设计后,才知道平日里书本上所学的东西太少,仅是些概念知识,没运用到实践中来,知识是无法得到升华的。5.2 展望经过系统的设计所遇到的问题以及学校所反映的情况,针对系统的不足还有以下几个方面需要进一步的完善和补充:(1)界面有待进一步改进,使其更加美观。 (2)开发工具C# 应该用最新版。(3)检测系统错误需进一步完善。(4)系统的维护功能要更强。(5)数据备份和恢复更完善。专心-专注-专业