数据库课程设计学生信息管理系统_第1页
数据库课程设计学生信息管理系统_第2页
数据库课程设计学生信息管理系统_第3页
数据库课程设计学生信息管理系统_第4页
数据库课程设计学生信息管理系统_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 No20摘 要随着计算机的应用变得越来越普遍和便捷,使得中学有条件使用软件来管理校园事务。所以我设计学生信息管理系统来简化那些过去用手工实现的管理工作,并使管理更加有效率。本文首先介绍了采用的面向对象的语言和数据库基本知识。然后介绍了本体统的概要设计,包括需求分析,模块的划分,程序的结构以及程序流程图。接着,详细介绍了系统的具体实现过程,包括模块功能的各种实现,具体界面的设计以及程序具体的实现过程。 本系统是采用C/S结构设计,用户的权限有2种,普通管理员和超级管理员。整个学生管理系统分为几个模块:学生信息管理,个个资料管理,课程管理,活动奖励管理,就业信息管理,规章制度管理,文件管理,学生

2、成绩修改/删除,密码修改等。本文针对这几个模块的功能,详细介绍了相关的面向对象的C#语言和对关系数据库数据库的设计访问,以及模块的功能设计和具体实现。 关键词:面向对象的语言; 需求分析; ASP.NET; 概要设计目 录1 系统功能概述11.1系统概述11.2系统功能11.3系统功能图22 数据库设计32.1需求分析32.2数据库概念结构设计(E-R图)32.3数据库表设计63 系统各功能模块的详细设计93.1系统登陆管理93.2个人信息管理103.3学生信息管理123.4课程信息管理14总 结18参考文献201 系统功能概述1.1系统概述学生信息管理系统是为了方便、快捷、有效地管理学生信息

3、而设计的。通过使用本系统,可以改变过去靠人工方式管理学生信息时存在的耗费人力、难于查询和修改等缺点。为更好的方便服务,本系统设有对学生的查询,如通过学号和姓名进行查询。同时还可以方便的对学生的信息和成绩进行修改和删除。同时,本系统界面设计简单易懂,即使没有计算机专业知识也可以很快的了解系统的使用。为了保证学生信息的安全性,还设置了管理员密码,避免被没有使用权限的人修改,而且,管理员还可以修改密码。1.2系统功能本系统分为几个模块,分别是:系统用户管理、个人资料管理、学生信息管理、课程管理、学生成绩管理、课程管理、学生成绩管理、活动奖励管理、就业信息管理、系统数据管理。1、 系统用户管理模块功能

4、描述:管理员添加、管理员查询。2、 个人资料管理模块功能描述:修改密码。3、 学生信息管理模块功能描述:学生信息添加、学生信息查询。4、 课程管理模块功能描述:课程添加、课程查询。5、 学生成绩管理模块功能描述:学生成绩添加、学生成绩查询。6、 活动奖励管理模块功能描述:活动奖励添加、活动奖励查询。7、 就业信息管理模块功能描述:就业信息登记、就业信息查询。8、 系统数据管理模块功能描述:数据备份。1.3系统功能图学生信息管理系统系统用户管理个人资料管理学生信息管理课程管理学生成绩管理活动奖励管理就业信息管理系统数据管理图1.1 系统功能图2 数据库设计2.1需求分析21世纪以来,人类经济高速

5、发展,人们发生了日新月异的变化,特别是计算机的应用及普及到经济和社会生活的各个领域。使原本的旧的管理方法越来越不适应现在社会的发展。许多人还停留在以前的手工操作。这大大地阻碍了人类经济的发展。为了适应现代社会人们高度强烈的时间观念,学校信息管理系统软件为学校办公室带来了极大的方便。2.2数据库概念结构设计(E-R图)在概念设计阶段中,从用户的角度看待数据是管理员的本职,这样的概念模式比较能够反映出客户的关键。然后再将其转变成逻辑模式。从设计过程中将概念设计独立开来,使得任务单一化,能够降低设计复杂程度。我先使用ER方法设计数据库的概念,由三步组成:先建立局部ER模式,然后把各局部ER模式合成一

6、个全局模式,最后通过优化,得到概念模式。各实体和属性的实体图如下。管理员(用户名,密码,权限),其实体图如下图2.1所示。图2.1 管理员实体图学生(学号,姓名,性别,班级,学院,入学时间,联系电话,专业等),其实体图如下2.2所示。图2.2 学生实体图课程(课程号,课程名,类型等),其实体图如下图2.3所示。图2.3 课程实体图学生成绩(学号,课程,成绩),其实体图如下图2.4所示。图2.4 学生成绩实体图活动奖励(学号,奖励描述,奖励级别),其实体图如下图2.5所示。图2.5 活动奖励实体图就业信息(学号,自我评价,就业时间,就业单位等),其实体图如下图2.6所示。图2.6 就业信息实体图

7、总体结构的E-R图如图2.7所示。图2.7 总体结构E-R图2.3数据库表设计本系统使用Microsoft SQL Server 2008数据库来进行数据库的逻辑设计。首先创建一个数据库,然后根据总体E-R图,创建几个基本数据库表,并建立各个表之间的联系。数据库表的结构如下所示。表allusers为管理员列表,主要包括用户名,密码,权限,添加时间。如表2.1所示。表2.1 管理员表字段名称字段类型大小允许为空IDint4否usernamevarchar50是pwdvarchar50是cxvarchar50是addtimedatetime8是表jiuyexinxi为就业信息表,主要包括学号,自我

8、评价,教师评价,学院意见,就业单位,就业时间,添加时间。如表2.2所示。表2.2 就业信息表字段名称字段类型大小允许为空IDint4否xuehaovarchar50是ziwopingjiavarchar50是jiaoshipingjiavarchar50是xueyuanyijianvarchar50是jiuyedanweivarchar50是jiuyeshijianvarchar50是addtimedatetime8是表huodongjiangli为活动奖励表,主要包括学号,奖励描述,奖励类别,添加时间。如表2.3所示。表2.3 活动奖励表字段名称字段类型大小允许为空IDint4否xuehao

9、varchar50是jianglimiaoshuvarchar50是jiangliliebievarchar50是addtimedatetime8是表xueshengxinxi为学生信息表,主要包括学号,账号名,密码,性别,年龄,学院,名称,班级,专业,入学时间,添加时间。如表2.4所示。表2.4 学生信息表字段名称字段类型大小允许为空IDint4否xuehaovarchar50是zhanghaomingvarchar50是mimavarchar50是xingbievarchar50是nianlingvarchar50是xueyuanvarchar50是mingchengvarchar50是b

10、anjivarchar50是zhuanyevarchar50是ruxueshijianvarchar50是addtimedatetime8是表kecheng为课程表,主要包括课程号,课程名称,类型,学院,开设时间,结束时间,添加时间。如表2.5所示。表2.5 课程表字段名称字段类型大小允许为空IDint4否kechenghaovarchar50是kechengmingchengvarchar50是leixingvarchar50是xueyuanvarchar50是kaisheshijianvarchar50是jieshushijianvarchar50是addtimedatetime8是表xu

11、eshengchengji为学生成绩表,主要包括学号,课程,成绩,添加时间。如表2.6所示。表2.6 学生成绩表字段名称字段类型大小允许为空IDint4否xuehaovarchar50是kechengvarchar50是chengjivarchar50是addtimedatetime8是3 系统各功能模块的详细设计3.1系统登陆管理 在这个界面,系统会对用户名和密码进行检验。如果用户名和密码与数据库中所存的一致,则进入主界面。否则,会弹出消息框,提示用户输入错误,请检验后再输入。界面设计如图3.1所示。图3.1登陆界面主要代码如下:protected void Button1_Click(ob

12、ject sender, EventArgs e) if (TextBox2.Text.ToString().Trim() = "" | TextBox1.Text.ToString().Trim() = "") Response.Write("<script>javascript:alert('请输入完整');history.back();</script>"); Response.End(); string sql="" sql = "select * from

13、 allusers where username='" + TextBox1.Text.ToString().Trim() + "' and pwd='" + TextBox2.Text.ToString().Trim() + "' " DataSet result = new DataSet(); result = new Class1().hsggetdata(sql); if (result != null) if (result.Tables0.Rows.Count > 0) Session&quo

14、t;username" = TextBox1.Text.ToString().Trim(); Session"cx" = result.Tables0.Rows0"cx".ToString().Trim(); Response.Redirect("main.aspx"); else Response.Write("<script>javascript:alert('用户名或密码错误!');</script>"); else Response.Write("

15、<script>javascript:alert('系统错误!请不要越权操作 ');</script>"); 3.2个人信息管理在这个模块里,用户可以修改自己的登陆信息。界面如图3.2所示。图3.2密码修改主要代码如下:public int hsgexucute(string sql) SqlConnection conn = new SqlConnection(); conn.ConnectionString = connstring; SqlCommand myCommand = new SqlCommand(sql, conn); try

16、 conn.Open(); myCommand.ExecuteNonQuery(); return 1; catch return 0; finally conn.Close(); public partial class edituser : System.Web.UI.Page protected void Page_Load(object sender, EventArgs e) if (Session"cx".ToString().Trim() != "超级管理员") Response.Write("<script>java

17、script:alert('请不要越权操作);history.back();</script>"); Response.End(); if (!IsPostBack) cx.Items.Add("超级管理员"); cx.Items.Add("普通管理员"); protected void Button1_Click(object sender, EventArgs e) string sql; sql = "insert into allusers(username,pwd,cx) values('&quo

18、t; + username.Text.ToString().Trim() + "','" + pwd1.Text.ToString().Trim() + "','"+cx.Text.ToString().Trim()+"')" new Class1().hsgexucute(sql); Response.Write("<script>javascript:alert(' 添加成功');</script>"); 3.3学生信息管理在这个模

19、块里,用户可以根据需要,对学生的一些资料进行修改。点击添加按钮后,会调用查询存储过程在学生个人资料表中进行添加。结果会在Datagrid中显示出来。界面设计如图3.3所示: 图3.3 添加学生信息主要代码如下:public partial class xueshengxinxi_add : System.Web.UI.Page protected void Page_Load(object sender, EventArgs e) if (!IsPostBack) xingbie.Items.Add("male"); xingbie.Items.Add("fema

20、le"); protected void Button1_Click(object sender, EventArgs e) string sql; sql="insert into xueshengxinxi(xuehao,zhanghaoming,mima,xingbie,nianling,xueyuan,mingcheng,banji,zhuanye,ruxueshijian) values('"+xuehao.Text.ToString().Trim()+"','"+zhanghaoming.Text.ToStr

21、ing().Trim()+"','"+mima.Text.ToString().Trim()+"','"+xingbie.Text.ToString().Trim()+"','"+nianling.Text.ToString().Trim()+"','"+xueyuan.Text.ToString().Trim()+"','"+mingcheng.Text.ToString().Trim()+"',

22、'"+banji.Text.ToString().Trim()+"','"+zhuanye.Text.ToString().Trim()+"','"+ruxueshijian.Text.ToString().Trim()+"') " int result; result = new Class1().hsgexucute(sql); if (result = 1) Response.Write("<script>javascript:alert('

23、 添加成功');</script>"); else Response.Write("<script>javascript:alert('添加失败 ');</script>"); 模块的第二个功能是学生信息的查询,修改,删除等操作,用户根据条件查询出数据,在Gridview中显示,点击“修改”,“删除”可执行相应动作,更新的数据库。界面设计如图3.4所示 图3.4 学生信息查询更新查询主要代码如下:protected void Button1_Click(object sender, EventArgs e

24、) string sql; sql = "select * from xueshengchengji where 1=1" if (bh.Text.ToString().Trim() != "") sql = sql + " and xuehao like '%" + bh.Text.ToString().Trim() + "%'" if (kecheng.Text.ToString().Trim() != "所¨´有®D") sql = sql +

25、 " and kecheng like '%" + kecheng.Text.ToString().Trim() + "%'" if (cj1.Text.ToString().Trim() != "") sql = sql + " and chengji >= "+cj1.Text.ToString().Trim()+"" if (cj2.Text.ToString().Trim() != "") sql = sql + " and cheng

26、ji <= " + cj2.Text.ToString().Trim() + "" sql = sql + " order by xuehao asc" getdata(sql);修改主要代码如下:public partial class delid : System.Web.UI.Page protected void Page_Load(object sender, EventArgs e) if (Request"delid".ToString().Trim() != "") /以°

27、?下?这a段?与®?delgg.aspx.cs一°?模¡ê一°?样¨´. string sql; sql = "delete from " + Request"tablename".ToString().Trim() + " where id=" + int.Parse(Request"delid".ToString().Trim() + "" new Class1().hsgexucute(sql); Response.Re

28、direct(Request.QueryString"npage".ToString().Trim(); 3.4课程信息管理在这个模块里,用户可以根据需要,对学生课程进行管理。点击添加按钮后,会调用查询存储过程在学生课程资料表中进行添加。界面设计如图3.5 所示图3.5 课程信息添加主要代码如下: protected void Button1_Click(object sender, EventArgs e) string sql; sql="insert into kecheng(kechenghao,kechengmingcheng,leixing,xueyu

29、an,kaisheshijian,jieshushijian) values('"+kechenghao.Text.ToString().Trim()+"','"+kechengmingcheng.Text.ToString().Trim()+"','"+leixing.Text.ToString().Trim()+"','"+xueyuan.Text.ToString().Trim()+"','"+kaisheshijian.Tex

30、t.ToString().Trim()+"','"+jieshushijian.Text.ToString().Trim()+"') " int result; result = new Class1().hsgexucute(sql); if (result = 1) Response.Write("<script>javascript:alert('添加成功');</script>"); else Response.Write("<script>

31、javascript:alert('添加失败');</script>"); 模块的第二个功能是课程信息的查询,修改,删除等操作,用户根据条件查询出数据,在Gridview中显示,点击“修改”,“删除”可执行相应动作,更新的数据库。界面设计如图3.6所示:图3.6 课程信息查询更新修改操作主要代码如下:public DataSet hsggetdata(string sql) SqlConnection conn = new SqlConnection(); conn.ConnectionString = connstring; SqlCommand myC

32、ommand = new SqlCommand(sql, conn); SqlCommand cmd = new SqlCommand(sql, conn); try SqlDataAdapter da = new SqlDataAdapter(myCommand);, DataSet ds = new DataSet(); da.Fill(ds); return ds; catch return null; finally conn.Close(); public partial class kecheng_updt : System.Web.UI.Page protected void P

33、age_Load(object sender, EventArgs e) if (!IsPostBack) string sql; sql = "select * from kecheng where id=" + Request.QueryString"id".ToString().Trim() ; getdata(sql); private void getdata(string sql) DataSet result = new DataSet(); result = new Class1().hsggetdata(sql); if (result

34、 != null) if (result.Tables0.Rows.Count > 0) kechenghao.Text = result.Tables0.Rows0"kechenghao".ToString().Trim();kechengmingcheng.Text = result.Tables0.Rows0"kechengmingcheng".ToString().Trim();leixing.Text = result.Tables0.Rows0"leixing".ToString().Trim();xueyuan.T

35、ext = result.Tables0.Rows0"xueyuan".ToString().Trim();kaisheshijian.Text = result.Tables0.Rows0"kaisheshijian".ToString().Trim();jieshushijian.Text = result.Tables0.Rows0"jieshushijian".ToString().Trim(); protected void Button1_Click(object sender, EventArgs e) string s

36、ql; sql = "update kecheng set kechenghao='" + kechenghao.Text.ToString().Trim() + "',kechengmingcheng='" + kechengmingcheng.Text.ToString().Trim() + "',leixing='" + leixing.Text.ToString().Trim() + "',xueyuan='" + xueyuan.Text.ToString().Trim() + "',kaisheshijian='" + kaisheshijian.Text.ToString().Trim() + "',jieshushijian='

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论