收藏 分销(赏)

用C#做学生信息管理系统备课讲稿.doc

上传人:丰**** 文档编号:3853780 上传时间:2024-07-22 格式:DOC 页数:34 大小:448KB
下载 相关 举报
用C#做学生信息管理系统备课讲稿.doc_第1页
第1页 / 共34页
用C#做学生信息管理系统备课讲稿.doc_第2页
第2页 / 共34页
用C#做学生信息管理系统备课讲稿.doc_第3页
第3页 / 共34页
用C#做学生信息管理系统备课讲稿.doc_第4页
第4页 / 共34页
用C#做学生信息管理系统备课讲稿.doc_第5页
第5页 / 共34页
点击查看更多>>
资源描述

1、课 程 设 计 课程名称数据库系统原理课程设计题目名称学生信息管理系统专业班级学生姓名学 号指导教师目 录摘 要2第一章需求分析31.1信息需求31.1功能需求3第二章 数据库设计5第三章 类的应用63.1模块任务63.2模块指标63.3 模块提出63.4 模块实施6第四章 数据访问方法84.1模块任务84.2模块指标84.3 模块实施8第五章 窗体和事件应用105.1 模块任务105.2 模块的提出105.3 模块实施10第六章 程序设计总结156.1感想156.2致谢15参考文献16附源程序17 摘 要 目前,我国的大中专院校的学生信息管理水平普遍不高。在当今的信息时代,传统的管理方法必然

2、要被以计算机为基础的信息管理系统所代替,而且目前很多重点院校都已经有了自己的教务管理系统。已有的大都比较偏向学生档案管理,学籍管理等,而本案例则把重点放在信息管理上,从整体上进行分析设计,这对于其他类似的管理系统的设计有很高的参考意义。 采用学生信息管理系统进行C#程序开发,将C#程序中的所有概念和技术应用到学生信息管理系统的开发当中,按照软件工程的思想来进行网站开发。分别进行学生信息管理系统需求分析、学生信息管理系统数据库设计、学生信息管理系统主菜单设计、学生信息管理系统中类的应用、学生信息管理系统数据访问方法、学生信息管理系统窗体和事件应用和学生信息管理系统应用部署等几个模块来完成。关键词

3、:C#;数据库;信息管理;管理系统第一章 需求分析1.1信息需求我们将管理体制和建立各种管理规范与开发信息系统有机地结合起来,通过几个功能模块进行统一管理,要求管理系统满足以下几个方面的要求:从用户角度来看,系统首先应该能够提供便捷与强大的信息查询功能。对于学校的全体教师而言,他们应该能够对系统的不同部分有各自不同的权限。具有较强的灵活性及可扩展性,能够存储一定数量的学生信息,并方便有效地进行相应的数据操作和管理.这主要包括:学生信息的录入、删除及修改,各种信息的单条件查询和多条件的组合查询,以及学生各科信息的多关键字检索查询。具有较高的安全性,系统登录有各自的安全账户。系统管理员可添加用户信

4、息,更改用户信息和删除用户信息,同时可以针对其他的信息具有所有的权限;任课教师可以录入信息;学生只能对所有的信息具有查询的功能,不具有修改、删除和录入的权限。系统能够提供数据信息授权访问,防止随意删改等。1.2功能需求1.2.1功能模块设计学生信息管理系统系统管理 学生管理用户添加用户查询用户修改用户删除学生添加学生查询学生修改学生删除图1-1功能模块图1.2.2 系统管理 本模块主要是维护系统的正常运行和安全性设置,包括当登录用户身份时管理员能够完成添加用户、删除用户、修改密码、查询用户的权限和重新登录等功能,以及能够实现按照学生的学号、学生的姓名、学生所在班级代码或者学生的性别,进行单条件

5、或者组合条件的查询。主要有:1、用户信息添加2、用户信息查询3、用户信息删除4、用户信息修改5、用户修改密码1.2.3 学生管理本模块能够实现有关学生基本信息的录入、修改、查询和删除。同时能够实现按照学生学号或学生姓名,进行单条件或者组合条件的查询。主要有:1、学生基本信息的录入2、学生基本信息的修改3、学生基本信息的查询4、学生基本信息的删除第二章 数据库设计学生信息管理系统是以学生信息数据为主的管理,其数据库的建立、健全就是关键。合理的数据库结构设计可以提高数据存储的效率,保证数据的完整性和一致性。同时,合理的数据库结构也有利于程序的实现。主要步骤如下:1、创建学生信息管理系统数据库: S

6、XXXGL2、创建学生信息管理系统的数据表: StudentInfo和UserInfo表2-1学生信息表StudentInfo 列名数据类型数据长度允许null备注 Snovarchar8不允许学号 Snamevarchar20允许姓名 Sexvarchar2允许性别 Birthdaydatetime8允许出生日期Classidvarchar10允许班级Telvarchar20允许电话表2-2 用户登录表UserInfo列名数据类型数据长度允许null备注UserlevelUseridUserpwdvarcharvarcharvarchar101010允许不允许允许用户权限用户名用户密码第三章

7、 类的应用3.1模块任务创建学生信息管理系统中的各个实体类。3.2模块指标创建学生信息管理系统的实体类: Constants类、StudentInfoData类、StudentInfoOperation类、DataAccess类、UserInfoData类和UserInfoOperation类。3.3 模块提出学生信息管理系统的需求分析和数据库创建之后,已经确定了所要实现的功能模块内容,对于程序的开发,可以采用直接在表现层来编写代码,直接访问数据库。但是这种方式,对于程序的安全性和后续程序的扩展都是非常不利的。因此,创建实体类是必不可少的。3.4 模块实施3.4.1学生信息类学生信息类Stud

8、entInfoData.cs,主要是针对学生信息的实体定义。StudentInfoData.cs类的访问修饰符应该设为public,设置为公开的,这样才可以被其他层的类访问。定义StudentInfoData.cs类的形式如下所示: public class StudentInfoData StudentInfoData类中主要进行属性的设置。各个属性对应数据库StudentInfo表中的相应字段。主要程序代码包含6个内部变量:1、设置学号的内部变量为字符串类型的sno2、学生姓名的内部变量为字符串类型的sname3、性别的内部变量为字符串类型的sex4、出生日期的内部变量为字符串类型的bir

9、thday5、电话的内部变量为字符串类型的tel6、班级号的内部变量为字符串类型的classid使用get访问器来返回所对应的内部变量的值,使用set访问器来设置所对应的内部变量的值。3.4.2用户信息类用户信息类UserInfoData.cs,主要是针对用户信息的实体定义。UserInfoData类中主要进行属性的设置。各个属性对应数据库UserInfo表中的相应字段。主要程序代码包含3个内部变量:1、设置用户名的内部变量为字符串类型的userid2、用户密码的内部变量为字符串类型的userpwd3、用户身份的内部变量为字符串类型的userlevel使用get访问器来返回所对应的内部变量的值

10、,使用set访问器来设置所对应的内部变量的值。3.4.3用户权限类用户权限类Constants.cs,主要是针对用户权限的实体定义。Constants类中主要进行属性的设置。主要程序代码包含2个内部变量:1、设置用户名的内部变量为字符串类型的username2、用户权限的内部变量为字符串类型的userlevel使get访问器来返回所对应的内部变量的值,使用set访问器来设置所对应的内部变量的值。第四章 数据访问方法4.1模块任务创建学生信息管理系统中的各个操作类。4.2模块指标创建学生信息管理系统的操作类:DataAccess类、StudentInfoOperation类、和UserInfoO

11、peration类。针对数据表中的数据信息进行实体类的定义之后,需要针对这些数据表中的内容,定义针对数据的增、删、改和查等数据访问操作类。4.3 模块实施4.3.1数据访问类DataAccess.cs类的访问修饰符设为public,设置为公开的,这样才可以被其他类访问。但是在定义DataAccess.cs类之前,需要引用命名空间,如下所示:using System.Data; using System.Data.SqlClient;DataAccess.cs类主要是实现数据库连接及对SQL命令的执行。 public class DataAccess 首先在DataAccess.cs类中定义静态

12、连接字符串ConnectionString,其代码如下所示:public static string ConnectionString = data source=.;database=SSCGGL;integrated security=true;public bool ExecuteSQL(string sql)public SqlDataReader GetReader(string sql)public DataSet GetDataSet(string sql, string tablename)public int GetCount(string sql)public bool C

13、heckAdmin(string strname, string strpwd)4.3.2学生操作类StudentInfoOperation.cs类的访问修饰符设为public,设置为公开的,这样才可以被其他类访问。StudentInfoOperation.cs类主要是实现对学生信息的操作,针对数据库中的StudentInfo表进行增删改查操作。定义StudentInfoOperation.cs类的形式如下所示:public class StudentInfoOperation 在该类中,定义的方法都是需要调用数据访问类DataAccess.cs中的方法,因此需要首先实例化数据访问类DataA

14、ccess类的对象。定义的代码如下所示:private static DataAccess dataAccess = new DataAccess();public static bool insertStudentInfo(StudentInfoData studentInfoData)public static bool updateStudentInfo(StudentInfoData studentInfoData)public static bool deleteStudentInfo(string sno)public static DataSet getStudentInfo(S

15、tudentInfoData studentInfoData)4.3.3用户操作类UserInfoOperation.cs类的访问修饰符设为public,设置为公开的,这样才可以被其他类访问。UserInfoOperation.cs类主要是实现对用户信息的操作,针对数据库中的UserInfo表进行增删改查操作。定义UserInfoOperation.cs类的形式如下所示:Public class UserInfoOperation 在该类中,定义的方法都是需要调用数据访问类DataAccess.cs中的方法,因此需要首先实例化数据访问类DataAccess类的对象。定义的代码如下所示:priv

16、ate static DataAccess dataAccess = new DataAccess();public static bool insertUserInfo(UserInfoData data)public static bool updateUserInfo(UserInfoData data)public static bool deleteUserInfo(string userid)public static DataSet getUserInfo(UserInfoData data)public static DataSet getUserInfoAll(UserInf

17、oData data)第五章 窗体和事件应用5.1 模块任务5.1.1 创建学生信息管理系统中的各个窗体5.1.2 实现对用户、学生信息的增删改查功能创建学生信息管理系统的窗体:Frmlogin.cs登录窗体、Frmxsxxgl.cs主窗体、Frmaddstu.cs添加学生窗体、FrmaddUser.cs添加用户窗体、Frmcjcx.cs信息查询窗体、Frmmmxg.cs用户修改密码窗体、Frmstuxxcx.cs学生查询窗体、Frmusercx.cs用户查询窗体。5.2 模块的提出窗体是进行用户体验的最好方式,当用户使用学生信息管理系统的时候,窗体是用户直接使用的界面,因此需要设计合理并便于

18、用户操作。5.3 模块实施5.3.1 Frmlogin.cs登录窗体Frmlogin.cs窗体是用户进行登录所使用的窗体,主要包含Label标签、TextBox文本框和Button按钮。用户输入用户名和密码之后,点击“登录”按钮,可以验证用户身份的合理性,用户身份有效可以登录到主界面中。如图5-1所示。图5-1学生信息管理系统的主界面5.3.2 Frmxsxxgl.cs主窗体Frmxsxxgl.cs窗体为主窗体,窗体上包含了所有模块的菜单项,但是系统根据用户的权限,来设置菜单项中的哪些模块是可以使用的,哪些模块是不可以使用的。首先在Frmxsxxgl.cs主界面的构造函数中,进行用户权限的判断

19、,如果是学生或者教师登录,那么只允许部分模块进行操作,只有管理员可以所有模块都进行操作。首先创建UserInfoData用户实体类的对象data,并且将Frmlogin.cs窗体中用户登录的名字赋值给data对象的Userid属性,创建数据集ds来获取UserInfoOperation用户操作类中的getUserInfoAll()方法中用户记录。如果用户记录不为空,那么获取该用户的Userlevel字段的值,该值如果为学生或者教师,那么部分模块的Enabled属性设置为false,让这些模块不可用。如果为管理员,那么默认的所有的模块都是可用的,也就是所有模块菜单的Enabled属性的初值均为t

20、rue。如图5-2所示。图5-2主页面中的菜单5.3.3 Frmaddstu.cs添加学生窗体Frmaddstu.cs窗体主要是用来添加学生信息或者修改学生信息,输入学号、姓名、性别、出生日期、家庭住址、家庭电话和所在班级,点击“保存”按钮即可录入或者修改学生信息记录,点击“取消”按钮,退出学生信息添加窗体。如图7-1所示。图5-3 Frmaddstu.cs窗体5.3.4 FrmaddUser.cs添加用户窗体FrmaddUser.cs窗体主要是实现登录用户的添加操作。该窗体中包含了用户名、密码、确认密码和用户权限这些信息。当点击“保存”按钮时,即可以将用户的这些信息添加到数据库中。点击“取消

21、”按钮,可以退出用户信息添加窗体。如图7-2所示。图5-4 FrmaddUser.cs窗体5.3.5 Frmmmxgx.cs用户修改密码窗体Frmmmxgx.cs窗体主要是实现用户修改密码的功能。该窗体中,可以通过输入用户名和原密码,然后输入新密码和确认新密码,来修改用户的登录密码。如图7-3所示。图5-5 Frmmmxgx.cs窗体5.3.6 Frmstuxxcx.cs学生信息查询窗体Frmstuxxcx.cs窗体主要是实现学生信息查询功能。该窗体中,可以通过学生学号、学生姓名、性别或班级信息进行查询,窗体中有一个DataGridView控件,当查询出结果后,可以选中控件中的一条记录,进行删

22、除或者修改操作。如图7-4所示。图5-6 Frmstuxxcx.cs窗体5.3.7 Frmusercx.cs用户信息查询窗体Frmusercx.cs窗体主要是实现用户信息查询功能。该窗体中,可以通过用户名或者用户类型进行查询,窗体中有一个DataGridView控件,当查询出结果后,可以选中控件中的一条记录,进行删除或者修改操作。如图4-5所示。图5-7 Frmusercx.cs窗体 第六章 程序设计总结6.1感想6.2致谢参考文献1 AndrewTroelsen著 朱晔译C#与.NET4高级程序设计人民邮电出版社2011年4月2 张俊崔海波著ADO.NET数据库应用开发机械工业出版社 200

23、8年1月3(英)夏普 著 Visual C# 2005从入门到精通清华大学出版社 2006-6-14(美)里克特 著,李建忠 译NET框架程序设计(修订版)清华大学出版社 2003-11-15(美)罗宾逊,(美)内格尔 著,李敏波 翻译C#高级编程(第3版)清华大学出版社 2005-6-1附源程序using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;us

24、ing System.Windows.Forms;namespace 学生信息管理系统4 public partial class Frmlogin : Form public Frmlogin() InitializeComponent(); /设置启动模块 private void btnlogin_Click(object sender, EventArgs e) string name, pwd; if (Username.Text.Trim() != & password.Text.Trim() != ) name = Username.Text.Trim(); pwd = pass

25、word.Text.Trim(); DataAccess data = new DataAccess(); if (data.CheckAdmin(name, pwd) Classes.Constants.Username = Username.Text.Trim(); Frmxsxxgl winmain = new Frmxsxxgl(); winmain.Show(); this.Hide(); else MessageBox.Show(您输入的账号或密码有误,请重新登录!); Username.Text = ; password.Text = ; private void button2

26、_Click(object sender, EventArgs e) Application.Exit(); using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Windows.Forms;namespace 学生信息管理系统4 public partial class Frmxsxxgl : Form public Frmx

27、sxxgl() InitializeComponent(); Classes.UserInfoData data = new 学生信息管理系统4.Classes.UserInfoData(); data.Userid = Classes.Constants.Username;/获取登录用户的姓名 DataSet ds = Classes.UserInfoOperation.getUserInfoAll(data); if (ds.Tables0.Rows.Count 0) /获取登录用户的身份 Classes.Constants.Userlevel = ds.Tables0.Rows0User

28、level.ToString(); /登录身份是“学生”,设置某些模块不可被调用 if (Classes.Constants.Userlevel = 学生) this.用户查询ToolStripMenuItem.Enabled = false; this.用户删除ToolStripMenuItem.Enabled = false; this.用户添加ToolStripMenuItem.Enabled = false; this.成绩录入ToolStripMenuItem.Enabled = false; this.成绩删除ToolStripMenuItem.Enabled = false; t

29、his.成绩修改ToolStripMenuItem.Enabled = false; this.课程信息删除ToolStripMenuItem.Enabled = false; this.课程信息添加ToolStripMenuItem.Enabled = false; this.课程信息修改ToolStripMenuItem.Enabled = false; this.班级信息删除ToolStripMenuItem.Enabled = false; this.班级信息添加ToolStripMenuItem.Enabled = false; this.班级信息修改ToolStripMenuIte

30、m.Enabled = false; this.学生信息删除ToolStripMenuItem.Enabled = false; this.学生信息添加ToolStripMenuItem.Enabled = false; this.学生信息修改ToolStripMenuItem.Enabled = false; this.专业信息删除ToolStripMenuItem.Enabled = false; this.专业信息添加ToolStripMenuItem.Enabled = false; this.专业信息修改ToolStripMenuItem.Enabled = false; this.

31、教师信息删除ToolStripMenuItem.Enabled = false; this.教师信息添加ToolStripMenuItem.Enabled = false; this.教师信息修改ToolStripMenuItem.Enabled = false; /登录身份是“任课教师”,设置某些模块不可被调用 else if (Classes.Constants.Userlevel = 任课教师) this.用户查询ToolStripMenuItem.Enabled = false; this.用户删除ToolStripMenuItem.Enabled = false; this.用户添加

32、ToolStripMenuItem.Enabled = false; this.成绩删除ToolStripMenuItem.Enabled = false; this.成绩修改ToolStripMenuItem.Enabled = false; this.课程信息删除ToolStripMenuItem.Enabled = false; this.课程信息添加ToolStripMenuItem.Enabled = false; this.课程信息修改ToolStripMenuItem.Enabled = false; this.班级信息删除ToolStripMenuItem.Enabled =

33、false; this.班级信息添加ToolStripMenuItem.Enabled = false; this.班级信息修改ToolStripMenuItem.Enabled = false; this.学生信息删除ToolStripMenuItem.Enabled = false; this.学生信息添加ToolStripMenuItem.Enabled = false; this.学生信息修改ToolStripMenuItem.Enabled = false; this.专业信息删除ToolStripMenuItem.Enabled = false; this.专业信息添加ToolSt

34、ripMenuItem.Enabled = false; this.专业信息修改ToolStripMenuItem.Enabled = false; this.教师信息删除ToolStripMenuItem.Enabled = false; this.教师信息添加ToolStripMenuItem.Enabled = false; this.教师信息修改ToolStripMenuItem.Enabled = false; private void 退出ToolStripMenuItem_Click(object sender, EventArgs e) this.Close(); privat

35、e void 技术支持ToolStripMenuItem_Click(object sender, EventArgs e) System.Diagnostics.Process.Start(); private void 关于学生信息管理系统ToolStripMenuItem_Click(object sender, EventArgs e) MessageBox.Show(学生信息管理系统4V.7, 版本信息, MessageBoxButtons.OKCancel, MessageBoxIcon.Warning); private void 联系我们ToolStripMenuItem_Cl

36、ick(object sender, EventArgs e) System.Diagnostics.Process.Start(mailto:moon120); private void 重新登录ToolStripMenuItem_Click(object sender, EventArgs e) Frmlogin login = new Frmlogin(); login.Show(); this.Close(); private void 用户查询ToolStripMenuItem_Click(object sender, EventArgs e) Frmusercx usercx =

37、new Frmusercx(); usercx.MdiParent = this; usercx.Show(); private void 用户添加ToolStripMenuItem_Click(object sender, EventArgs e) FrmaddUser adduser = new FrmaddUser(); adduser.MdiParent = this; adduser.Show(); private void 用户修改ToolStripMenuItem_Click(object sender, EventArgs e) Frmmmxg objchild = new F

38、rmmmxg(Classes.Constants.Username); objchild.MdiParent = this; objchild.Show(); private void 用户删除ToolStripMenuItem_Click(object sender, EventArgs e) Frmusercx usercx = new Frmusercx(del); usercx.MdiParent = this; usercx.Show(); using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Windows.Forms;namespace 学生信息管理系统4 public partial class Frmusercx : Form public Frmusercx() InitializeComponent(); public Frmusercx(string a) InitializeComponent(); this.btncancle.Enabled = true; publ

展开阅读全文
部分上传会员的收益排行 01、路***(¥15400+),02、曲****(¥15300+),
03、wei****016(¥13200+),04、大***流(¥12600+),
05、Fis****915(¥4200+),06、h****i(¥4100+),
07、Q**(¥3400+),08、自******点(¥2400+),
09、h*****x(¥1400+),10、c****e(¥1100+),
11、be*****ha(¥800+),12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
百度文库年卡

猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 教育专区 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服