数据库课程设计学生信息管理系统报告

上传人:仙*** 文档编号:34512507 上传时间:2021-10-21 格式:DOC 页数:23 大小:396.02KB
收藏 版权申诉 举报 下载
数据库课程设计学生信息管理系统报告_第1页
第1页 / 共23页
数据库课程设计学生信息管理系统报告_第2页
第2页 / 共23页
数据库课程设计学生信息管理系统报告_第3页
第3页 / 共23页
资源描述:

《数据库课程设计学生信息管理系统报告》由会员分享,可在线阅读,更多相关《数据库课程设计学生信息管理系统报告(23页珍藏版)》请在装配图网上搜索。

1、1 引言学生信息管理系统是一个教育单位不可缺少的部分。一个功能齐全、简单易用的信息管理系统不但能有效地减轻学校相关工作人员的工作负担,它的内容对于学校的决策者和管理者来说都至关重要。所以学生信息管理系统应该能够为用户提供充足的信息和快捷的查询手段。但一直以来人们使用传统人工的方式管理文件档案、统计和查询数据,这种管理方式存在着许多缺点,如:效率低、保密性差,人工的大量浪费;另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少困难。随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着来越重要的作用。作为计算机应用的一部分

2、,使用计算机对学校的各类信息进行管理,具有手工管理所无法比拟的优点。例如:检索迅速、查询方便、效率高、可靠性好、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高学校信息管理的效率,也是一个单位科学化、正规化管理,与世界接轨的重要条件。建立学生信息管理系统,采用计算机对学生信息进行管理,进一步提高办学效益和现代化水平。帮助广大教师提高工作效率,实现学生信息管理工作流程的系统化、规范化和自动化。毋庸置疑,切实有效地把计算机管理引入学校学生成绩管理中,对于促进学校管理制度,提高学校教学质量与办学水平有着显著意义。2 需求分析本项目开发的软件为学校学生信息管理系统软件,是鉴于目前学校学生人

3、数剧增,学生信息呈爆炸性增长的前提下,学校对学生信息管理的自动化与准确化的要求日益强烈的背景下构思出来的,该软件设计完成后可用于所有教育单位(包括学校,学院等等)的学生信息的管理。 目前社会上信息管理系统发展飞快,各个企事业单位都引入了信息管理软件来管理自己日益增长的各种信息,学生管理系统也是有了很大的发展,商业化的学生信息管理软件也不少。但本系统完全独立开发,力求使系统功能简洁明了,但功能齐全且易于操作。根据要求,主要功能包括(1)输入学生信息,(2) 查看学生信息,(3) 查询学生信息,(4) 删除学生信息,(5)修改学生信息。系统的输入设备由一般的输入设备(即键盘、鼠标)组成,主要是从系

4、统的弹出对话框输入帐户的数据信息。系统的输出主要以对话框、编辑框以及列表显示于屏幕。2.1功能需求分析根据数据库中存储的数据对登录的用户账号进行验证,再进行判断是否授予访问权限。管理员可以根据需要,对学生的基本信息进行查看、添加、修改以及删除,详细操作如下:(1)添加学生信息的功能主要包括对学生信息的输入,包括待输入学生的学号、姓名、年龄、性别、所在学院和专业名。(2)查询学生信息的功能就是对已经添加的学生信息按学号进行查看,有利于管理者对学校学生信息的了解。(4)删除学生信息的功能是将整个系统的学生信息进行按学号进行删除。(5)修改学生信息的功能是输入要修改学生的学号分别修改学号、姓名、年龄

5、、性别、所在学院和专业名。2.2性能需求分析a)稳定性:软件应具备长期持续工作的能力。b)安全性:有良好的用户身份认证体制和灵活的密码更改模块。c)实用性:用户界面做到直观、友好,业务人员只需经过简单培训即可操作。d)可靠性:采用良好的操作软件和数据库,确保数据的一致性和完整性,并使软件免受病毒感染。2.3业务流程分析通过业务流程的分析将业务流程逻辑与实现各业务的应用分离、协调流程参与者的相互关系、集成内部和外部资源以及监控和分析流程性能,实现对业务流程整个生存周期的控制。它负责解释流程建模工具定义的业务流程逻辑,把任务分派给执行者,并根据任务执行的返回结果决定下一步的任务,控制并协调各种复杂

6、工作流程的执行并且同步各个客户端的反应,根据组织机构模型中所定义的岗位分派策略获取实际的执行者,并同时获得所需的组织信息。本软件的业务流程是:用户登录软件前首先判断用户名和密码是否正确,如果不正确就停留在登录界面重新输入;如果输入的信息正确就可以顺利的进入服务器端进行软件管理。2.3.1软件数据流图数据流图(DFD)是一种描述数据流和加工的图形表示。当数据输入到软件后,经过一系列变换(加工),最后输出新的数据。所以它服务于两个目的:(1)指明数据在软件中移动时如何被变换;(2)描述对数据流进行变换的功能(和子功能)。DFD提供了附加的信息,它们可以被用于信息域的分析,并作为功能建模的基础。在D

7、FD中出现的每个功能的描述包含在“加工规约”(PSPEC)中。随着这一过程的行,本软件的用户需求将会进一步精确化、一致化、完全化。具体数据流图如下:管理员权限信息用户权限信息用户基本信息管理员信息登录系统管理员系统学生信息系统管理员用户管理图2.3 软件数据流图2.3.2软件数据字典数据字典最重要的用途是作为分析阶段的工具。在数据字典中建立的一组严密一致的定义很有助于改进分析员和用户之间的通信,因此将消除许多可能的误解。数据字典是关于数据的信息集合,也就是对数据流图中包含的所有元素定义的集合。经过 上述软件功能分析和需求总结,考虑到将来功能上的扩展,设计如下面所示的数据项和数据结构。(1)学生

8、信息包括的数据项有:学生姓名、学生学号、学生性别、学生年龄、所在学院、专业名称 (2)管理员信息包括的数据项有:账号名、登录密码2.4数据需求分析得到上面的数据项和数据结构以后,就可以设计出能够满足用户需求的各种实体,以及它们之间的关系。根据上面的设计规划出的实体有:学生实体、管理员实体。A. 软件实体E-R图密码nm管理员账号名管理学生专业名所在学院姓名性别年龄学号图2.4软件E-R图B. 软件各实体属性图如下所示:a) 学生信息实体属性学生信息学生学号专业名学生姓名学生性别年龄所在学院图2.5学生信息实体属性图b) 管理员信息实体属性管理员信息登陆密码帐号名 2.6管理员信息实体属性图3

9、软件的设计 许多学校经过多年的发展,学校规模不断扩大,学生人数成倍增长,积累了大量的学生信息,继续进行统一管理以防信息的流失。因此,许多学校需要一个功能全面的学生信息管理系统来进行管理,以使管理学生信息的工作在该系统的配合下更加高效和便捷。3.1软件的结构设计学生信息管理添加学生信息查询学生信息删除学生信息修改学生信息信息学生信息管理系统是一个对学生全方面管理的程序。该系统充分考虑用户的操作简便性,实现快捷操作。它有以下几个功能:输入学生信息、查看学生信息、查询学生信息、删除学生信息、修改学生信息。根据功能描述,学生信息管理系统可以分为4个模块,每一个模块有提供了更具体的功能。学生信息管理系统

10、的功能模块图如图3.1所示。 图3.1 软件功能模块图3.2软件的数据库设计从软件的稳定性方面考虑,本软件使用SQL Server 2005数据库软件。结合需求分析中的E-R图,设计了各数据表。a)管理员信息表表2.1管理员信息表(Login)字段名称数据类型字段大小必填字段说明IDvarchar50是管理员帐号名,主键PWDsmallint50是登录密码b)学生信息表 表2.2学生信息表(Student)字段名称数据类型字段大小必填字段说明STIDint20是 学生学号,主键NAMEvarchar50否学生姓名XUEYUANvarchar50否所在学院ZHUANYEvarchar50否专业名

11、称AGEvarchar20否年龄SEXvarchar20否性别4 软件的实现详细设计是软件开发时期的第三个阶段,也是软件设计的第二步。在概要设计已经确定了软件软件的总体结构,详细设计主要是考虑“怎样实现”这个软件软件,给出各个模块的详细过程性描述。因此,软件的设计和实现如下。4.1管理员登录模块首先创建一个名为Default的Windows窗体,并设置相关的属性。在这个窗体中,需要提示管理员输入帐号名和密码,当输入的帐号名或者是密码有错误时会提示登录失败。为了实现这些功能,在窗体中放置一个Login控件,设计后的窗体如图4.1所示:图4.1管理员登录窗体该模块的核心代码如下:using Sys

12、tem;using System.Data;using System.Configuration;using System.Collections;using System.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.WebControls;using System.Web.UI.WebControls.WebParts;using System.Web.UI.HtmlControls;using System.Data.SqlClient;public partial class _Default

13、 : System.Web.UI.Page protected void Page_Load(object sender, EventArgs e) protected void Login1_Authenticate1(object sender, AuthenticateEventArgs e) string id = this.Login1.UserName; string pwd = this.Login1.Password; SqlConnection con = db.createconnection(); con.Open(); SqlCommand cmd = new SqlC

14、ommand(select count(*) from Login where ID= + id + and PWD= + pwd + , con); int count = Convert.ToInt32(cmd.ExecuteScalar(); con.Close(); if (count 0) Response.Redirect(main.aspx); 4.2信息查询模块首先创建一个名为seek的Windows窗体,并设置相关的属性。在这个窗体中,需要提示管理员输入学生学号进行查询,为了实现这一功能,在窗体中放置一个列表框控件、若干个文本框控件及按钮控件。设计后的窗体如图4.2所示: 图

15、4.2信息查询窗体该模块的核心代码如下: public partial class seek : System.Web.UI.Page protected void Page_Load(object sender, EventArgs e) if (!this.IsPostBack) SqlConnection con = db.createconnection();/建立连接 SqlDataAdapter sda = new SqlDataAdapter(select * from STUDENT , con);/ DataSet SET = new DataSet(); sda.Fill(

16、SET); this.DropDownList1.DataSource = SET; this.DropDownList1.DataTextField = STID; this.DropDownList1.DataValueField = STID; this.DropDownList1.DataBind(); protected void Button1_Click(object sender, EventArgs e) protected void Button2_Click(object sender, EventArgs e) Response.Redirect(main.aspx);

17、 4.3信息添加模块首先创建一个名为add的Windows窗体,并设置相关的属性。在这个窗体中,需要提示管理员输入学生的各项信息,为了实现这一功能,在窗体中放置一个列表框控件、若干个文本框控件及按钮控件。设计后的窗体如图4.3所示: 图4.3信息添加窗体该模块的核心代码如下:(1)“添加”控件所对应的事件代码: public partial class add : System.Web.UI.Page protected void Page_Load(object sender, EventArgs e) protected void Button1_Click(object sender,

18、EventArgs e) string stid; string name; string xueyuan; string zhuanye; string age; string sex; stid = this.TextBox1.Text.ToString(); name = this.TextBox2.Text.ToString(); xueyuan = this.TextBox3.Text.ToString(); zhuanye = this.TextBox4.Text.ToString(); age = this.TextBox5.Text.ToString(); sex = this

19、.TextBox6.Text.ToString(); SqlConnection con = db.createconnection(); con.Open(); SqlCommand cmd = new SqlCommand(); cmd.Connection = con; cmd.CommandText = insert into Student values( + stid + , + name + , + xueyuan + , + zhuanye + , + age + , + sex + ); cmd.ExecuteNonQuery(); con.Close(); Response

20、.Write(alert(添加成功!);(2)“重置”控件所对应的事件代码: protected void Button2_Click(object sender, EventArgs e) this.TextBox1.Text = ; this.TextBox2.Text = ; this.TextBox3.Text = ; this.TextBox4.Text = ; this.TextBox5.Text = ; this.TextBox6.Text = ;(1)“返回”控件所对应的事件代码: protected void Button3_Click(object sender, Even

21、tArgs e) Response.Redirect(main.aspx); 4.4信息删除模块首先创建一个名为delete的Windows窗体,并设置相关的属性。在这个窗体中,需要提示管理员根据学号删除学生的信息,为了实现这一功能,在窗体中放置一个列表框控件、若干个文本框控件及按钮控件。设计后的窗体如图4.4所示: 图4.4信息删除窗体该模块的核心代码如下:public partial class delete : System.Web.UI.Page protected void Page_Load(object sender, EventArgs e) if (!this.IsPostB

22、ack) SqlConnection con = db.createconnection();/建立连接 SqlDataAdapter sda = new SqlDataAdapter(select * from STUDENT , con);/ DataSet SET = new DataSet(); sda.Fill(SET); this.DropDownList1.DataSource = SET; this.DropDownList1.DataTextField = STID; this.DropDownList1.DataValueField = STID; this.DropDow

23、nList1.DataBind(); protected void DropDownList1_TextChanged(object sender, EventArgs e) SqlConnection con = db.createconnection();/调用静态方法创建连接.1 con.Open();/连接数据 SqlDataAdapter sda = new SqlDataAdapter(select * from Student where STID= + this.DropDownList1.SelectedValue + , con); DataSet set = new Da

24、taSet(); sda.Fill(set); this.GridView1.DataSource = set;/显示多行数据,而DataReader只显示一行数据 this.GridView1.DataBind(); protected void Button2_Click(object sender, EventArgs e) Response.Redirect(main.aspx); protected void Button1_Click(object sender, EventArgs e) string stid; stid = this.DropDownList1.Selecte

25、dValue; SqlConnection con = db.createconnection(); con.Open(); SqlCommand cmd = new SqlCommand(); cmd.Connection = con; cmd.CommandText = delete from Student where STID=+stid+; cmd.ExecuteNonQuery(); con.Close(); Response.Write(alert(删除成功!);location=delete.aspx;); 4.5信息修改模块首先创建一个名为updata的Windows窗体,并

26、设置相关的属性。在这个窗体中,需要提示管理员根据学号修改学生的信息,为了实现这一功能,在窗体中放置一个列表框控件、若干个文本框控件及按钮控件。设计后的窗体如图4.5所示: 图4.5信息修改窗体该模块的核心代码如下:public partial class update : System.Web.UI.Page protected void Page_Load(object sender, EventArgs e) this.Label2.Visible = false; this.Label3.Visible = false; this.Label4.Visible = false; this

27、.Label5.Visible = false; this.Label6.Visible = false; this.Label7.Visible = false; this.TextBox1.Visible = false; this.TextBox2.Visible = false; this.TextBox3.Visible = false; this.TextBox4.Visible = false; this.TextBox5.Visible = false; this.TextBox6.Visible = false; this.Button3.Visible = false; i

28、f (!this.IsPostBack) SqlConnection con = db.createconnection();/建立连接 SqlDataAdapter sda = new SqlDataAdapter(select * from STUDENT , con);/ DataSet SET = new DataSet(); sda.Fill(SET); this.DropDownList1.DataSource = SET; this.DropDownList1.DataTextField = STID; this.DropDownList1.DataValueField = ST

29、ID; this.DropDownList1.DataBind(); protected void DropDownList1_TextChanged(object sender, EventArgs e) SqlConnection con = db.createconnection();/调用静态方法创建连接.1 con.Open();/连接数据 SqlDataAdapter sda = new SqlDataAdapter(select * from Student where STID= + this.DropDownList1.SelectedValue + , con); Data

30、Set set = new DataSet(); sda.Fill(set); this.GridView1.DataSource = set;/显示多行数据,DataReader只显示一行数据 this.GridView1.DataBind(); this.Button3.Visible = true; protected void Button3_Click(object sender, EventArgs e) this.Label2.Visible = true; this.Label3.Visible = true; this.Label4.Visible = true; this.

31、Label5.Visible = true; this.Label6.Visible = true; this.Label7.Visible = true; this.TextBox1.Visible = true; this.TextBox2.Visible = true; this.TextBox3.Visible = true; this.TextBox4.Visible = true; this.TextBox5.Visible = true; this.TextBox6.Visible = true; string stid; stid = this.DropDownList1.Se

32、lectedValue; SqlConnection con = db.createconnection(); con.Open(); SqlCommand cmd = new SqlCommand(); cmd.Connection = con; cmd.CommandText = delete from Student where STID= + stid + ; cmd.ExecuteNonQuery(); con.Close(); protected void Button1_Click(object sender, EventArgs e) string stid; string n

33、ame; string xueyuan; string zhuanye; string age; string sex; stid = this.TextBox1.Text.ToString(); name = this.TextBox2.Text.ToString(); xueyuan = this.TextBox3.Text.ToString(); zhuanye = this.TextBox4.Text.ToString(); age = this.TextBox5.Text.ToString(); sex = this.TextBox6.Text.ToString(); SqlConn

34、ection con = db.createconnection(); con.Open(); SqlCommand cmd = new SqlCommand(); cmd.Connection = con; cmd.CommandText = insert into Student values( + stid + , + name + , + xueyuan + , + zhuanye + , + age + , + sex + ); cmd.ExecuteNonQuery(); con.Close(); Response.Write(alert(修改成功!); Response.Redi

35、rect(update.aspx); protected void Button2_Click(object sender, EventArgs e) Response.Redirect(main.aspx); 5 软件的测试5.1 登录模块测试 当管理员输入的帐号名和密码都正确时会进入如下页面: 图5.1正确登录页面当管理员输入的账号和密码有误时,会出现如下提示: 图5.2出错提示页面5.2 信息查询测试 管理员输入学生的学号进行查询,结果如下: 图5.3查询结果页面5.3 信息添加测试 管理员根据提示进行信息的添加,添加成功后结果如下: 图5.4添加信息页面添加成功后数据库中会添加相应信息

36、: 图5.5数据库信息页面5.4信息删除测试 管理员输入学生的学号进行删除,结果如下: 图5.6删除信息页面删除信息成功后,在数据库中会删除相应记录: 图5.7数据库信息页面5.5信息修改测试管理员输入学生的学号进行修改,结果如下: 图5.8修改信息页面当修改成功后,数据会保存至数据库中: 图5.9数据库信息页面6 实习体会课程设计是培养学生综合运用所学知识 ,发现、提出、分析和解决实际问题,锻炼实践能力的重要环节,是对我们的实际工作能力的具体训练和考察过程。随着科学技术发展的日新月异,当今计算机应用在生活中可以说得是无处不在。通过本次课程设计,收获颇多。首先,可以将自己学到的理论知识借助工具

37、应用到实践。平时真正锻炼的机会很少,总是在满足于看懂程序,因此离自己会写程序还有一段距离。这次做的课题以前也做过类似的,所以没有出现无从下手的局面,按照老师的要求一步步规划出需求分析和软件的总体设计,给自己搭建好一个框架,再对每个分类再进行细分,进行程序实现时也就没那么困难了。其次,我又接触了另一种语言,拓宽了我的知识,可以以不同于以前的方式制作软件。在编程上有了进一步的提高,对于编程的格式以及一些编程思想都有了相应的提升。在数据库方面,尤其巩固了sql语句,可以实现增删查改的功能,能编写存储过程,触发器,并能正确的将其应用到程序中;在对各个表的分析过程中,充分利用E-R图,可以将各种关系冗余

38、去除。在实验过程中也遇到了一些困难,但经过和同学讨论,并且上网查询,最终都将问题一一解决了,总之,只要敢于尝试,反复调试程序,总会将问题解决的。参 考 文 献1 萨师瑄,王珊.数据库系统概论.北京:高等教育出版社,19992 夏邦贵SQL Server 数据库开发入门与范例解析机械工业出版社,2004.63 李昆.SQL Server 2000课程设计案例精编.北京:中国水利水电出版社,20054 张立厚.管理信息系统.广州:广东世界图书出版社,20025 张海藩.软件工程导论.北京:清华大学出版社,2003.126 谭浩强,张基温,唐永炎.C语言程序设计教程.北京:高等教育出版社,20027 齐治昌等软件工程第2版北京:高等教育出版社,2004.48 谭浩强著.C程序设计.北京:清华大学出版社,20059 刘耀儒新概念SQL Server 2000教程第1版北京科海集团公司,200110 丁宝康,董健全数据库实用教程第2版北京:清华大学出版社,200323

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!