毕业设计说明书-计算机(共37页).doc

上传人:飞****2 文档编号:16653058 上传时间:2022-05-18 格式:DOC 页数:37 大小:509.50KB
返回 下载 相关 举报
毕业设计说明书-计算机(共37页).doc_第1页
第1页 / 共37页
毕业设计说明书-计算机(共37页).doc_第2页
第2页 / 共37页
点击查看更多>>
资源描述

《毕业设计说明书-计算机(共37页).doc》由会员分享,可在线阅读,更多相关《毕业设计说明书-计算机(共37页).doc(37页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、精选优质文档-倾情为你奉上毕业设计说明书学生姓名姚诗熠学 号学院 计算机科学与技术学院专 业计算机科学与技术题 目学生信息管理系统设计与实现指导教师杨 大 同 实验师 (姓 名) (专业技术职称/学位)2012年5月摘 要:随着计算机及网络技术的飞速发展,Internet应用在全球范围内日益普及,当今社会正快速向信息化社会前进,信息系统的作用也越来越大。传统的学校学籍管理方法、由于分散管理,易发生数据丢失,劳动强度高,速度慢。使用计算机可以高速、快捷地完成以上工作。特别是在计算机联网后,数据在网上传递,可以实现数据共享,避免重复劳动,规范教学管理行为,从而提高了管理效率和水平。学籍管理信息系统

2、以计算机为工具,通过对教务管理所需的信息管理,把管理人员从繁琐的数据计算处理中解脱出来,从而全面提高教学质量。针对目前学校发展迅速,学生信息管理要求不断加强与复杂化,信息管理系统由此诞生,为使学校管理各种各样学生信息,为老师与学生方便简捷的查询所需信息与资源,也为了后台的维护与更新。学生信息管理是一个教育单位不可缺少的部分,它的内容对于学校的管理与运行来说相当重要,所以本系统应该能够为用户提供充足的信息与快捷的查询方式。本系统主要采用SQL Server 2005数据库和C#开发的功能较为完善的学生信息管理系统。该系统主要包括用户登录、信息查询、成绩统计和选课等功能模块。关键词:学生信息管理系

3、统,数据库,C#Abstract: Along with the computer and network technology rapid development, Internet application in the global scope increasingly popular, todays society is fast forward to the information society, the role of information system is more and more big. The traditional school students identity

4、management method, because of decentralized management, easy happening data loss, labor strength, high speed. Use the computer can be high speed, quickly complete the above work. Especially in computer networking, online data transfer, data sharing can be realized, and avoid duplication, regulating

5、the management of teaching behavior, and improve the management efficiency and level. Students identity management information system to the computer as the tool, through to the educational administration management needed information management, management personnel from tedious data calculation re

6、leased in processing, thus improve the quality of teaching.In view of the current rapid development of the school, students information management requires the continuous strengthening and complicated, information management system born, to make the school management various student information for

7、the teacher and student convenient simple inquires information and resources needed and also to the maintenance and update. Students information management is a education unit essential part, its content to the schools management and operation is important, so this system should be able to provide u

8、sers with sufficient information and quick searching method. This system mainly USES the SQL Server 2005 database and the c # development function is relatively perfect student information management system. The system mainly include user login, information query, achievements statistics and course

9、selection function module.Keywords: students information management system, database, to use c #目 录1 引言随着计算机及网络技术的飞速发展,Internet应用在全球范围内日益普及,当今社会正快速向信息化社会前进,信息系统的作用也越来越大。传统的学校学籍管理方法、由于分散管理,易发生数据丢失,劳动强度高,速度慢。使用计算机可以高速、快捷地完成以上工作。特别是在计算机联网后,数据在网上传递,可以实现数据共享,避免重复劳动,规范教学管理行为,从而提高了管理效率和水平。学籍管理信息系统以计算机为工具,通

10、过对教务管理所需的信息管理,把管理人员从繁琐的数据计算处理中解脱出来,从而全面提高教学质量。2 开发工具简介2.1 ASP.NET简介ASP.NET是.NTE框架层之一,负责处理对特定类型文件的Web请求,这些文件主要包括扩展名为.aspx,.ascx以及.asmx的文件以及其他一些文件(在Web Internet Services Manager 应用程序中,可以通过查看Web站点的Application Configuration属性得到所有文件类型的列表)。ASP.NET引擎为创建动态内容提供了强健的对象模型,同时松散地集成在.NET框架中。这种集成有利于把.NET框架移植到非Windo

11、ws平台。2.2 SQL语言基础简介和SQL语句介绍SQL 的全称是Structured Query Language,即结构化查询语言。SQL语句可以从关系数据库中获得数据,也可以建立数据库、增加数据、修改数据。1986年ANSI采用SQL语言作为关系数据库系统的标准语言,后被国际化标准组织(ISO)采纳为国际标准。SQL语言使用方便、功能丰富、简洁易学,是操作数据库的工业标准语言,得到广泛地应用。(1)SQL语言的优点:1)非过程化语言SQL语言是一种非过程化语言,它一次处理一个记录集合,对数据提供自动导航。SQL语言允许用户在高层的数据结构上工作,而不对单个记录进行操作。SQL语言不要求

12、用户指定数据的存取方法,而是使用查询优化器,由系统决定对指定数据存取的最快速手段。当设计者在关系表上定义了索引时,系统会自动利用索引进行快速检索,用户不需知道表上是否有索引或者有什么类型的索引等细节。2)同一语言SQL可用于所有用户的数据库活动类型,包括数据库系统管理员、程序员等,它操作简单,使用方便。3)关系数据库的公共语言用户可将使用SQL的技能从一个远程数据库管理系统很容易的转到另一个系统。所有用SQL语言写的程序都具有可移植性。(2)SQL查询数据查询是关系运算理论在SQL语言中的主要体现,SELECT 语句是SQL查询的基本语句,当人们在对一个数据库进各种各样的操作时,使用的最多的就

13、是数据查询,在以SQL为基础的关系数据库中,使用的最多的就是SELECT查询语句。SELECT语句的完整句法如下:SELECT 目标表的列名或列表达式序列FROM 基本表和(或)视图序列WHERE 行条件表达式GROUP BY 列名序列ORDER BY列名 ASCDESCSQL语言还可以完成许多功能,例如:在数据库表格中插入、修改和删除记录;建立、修改和删除数据对象;控制对数据和数据对象的存取;确保数据库的一致性和完整性等。2.3 C#语言简介在过去的20年中,C/C+已经成为广泛应用于商业软件开发中的高级语言。但是C和C+都包含了一些容易使开发者产生错误的特性,通常我们可以认为,C/C+的灵

14、活性是以牺牲开发效率为代价的。在基于C语言的所有衍生语言中,C#是最近的演变结果。C#相对于C+而言,更现代、简单、完全面向对象和类型安全。最重要的是,它简化和现代化了C+在类、名字空间、方法重载和异常处理等领域的处理方法,摒弃了C+的复杂性,使它更易用、更少出错。在增强易用性的同时,C#也减少了C+的一些特性,如不再有宏、模板和多重继承等。事实上,特别是对企业开发者来说,上述功能只会产生更多的麻烦而不是效益。C#使编程更方便的新功能有严格的类型安全、版本控制、垃圾收集(garbage collection)等功能,所有这些功能的目标都瞄准了开发面向组件的软件。3 系统需求分析本系统属于小型的

15、学生信息管理系统,可以有效地对学生信息进行管理。本系统应该达到以下目标:(1) 系统采用人机交互方式,界面美观,信息查询灵活、方便,数据存储安全可靠。(2) 实现对学生选课、退学、个人信息及密码修改等操作。(3) 实现对教职工及学生管理(4) 实现成绩修改、查询、删除等操作。(5) 实现成绩统计的自动结算。(6) 实现对学生教师的历史信息记录进行查询,支持模糊查询。(7) 实现打印水晶报表(8) 系统应最大限度地实现易维护性和易操作性4 系统设计4.1 系统功能结构学生学籍管理系统个人信息查询学生管理教师管理教务管理选课管理成绩查询个人信息查询学生信息查询学生成绩管理授课信息管理教师信息管理学

16、生信息管理课程信息管理记录添加、删除、修改系统设置组权限管理根据管理系统的实际需求,可以将学生学籍管理系统划分为学生管理、教师管理、教务管理和系统设置4个部分。各个部分的具体功能的系统功能结构图如图4.1所示。图4.1 系统功能结构图4.2实体关系E-R图设计管理员课程教师学生成绩选课授课选择abefdc管理图4.2 系统实体关系E-R图4.3数据库设计在开发学生信息管理系统之前,分析了该系统的数据量。由于系统管理信息方面的数据较多,学生信息、课程信息以及成绩会占用较大的空间,因此选择Microsoft SQL Server 2005数据库存储这些信息,数据库命名为db_design,在数据库

17、中创建了6个表,2个视图。表admin主要用于保存所有管理员信息,该表的结构如表1所示。表1管理员信息表表course主要用于保存课程信息,该表的结构如表2所示表2课程信息表表teacher主要用于保存教师信息,该表的结构如表3所示表3教师信息表表student主要用于保存学生信息,该表的结构如表4所示表4学生信息表表teach主要用于保存学生选课信息,该表的结构如表5所示表5选课信息表表grade主要用于保存所有学生成绩,该表的结构如表6所示表6成绩信息表5 系统详细设计学生信息管理系统主要分登录、学生、教师、管理员四个模块。下面进行分别介绍。5.1登录模块设计为了使系统的安全性得到保障,大

18、多数系统都开发登录模块。本模块的主要功能是对用户身份进行验证,只有系统的合法用户才能进入系统。登录模块运行界面如图5.1.1所示图5.1.1 登录界面在进行系统登陆过程中,登陆模块将调用数据库里的用户信息表,并对用户名和密码进行验证,只有输入了正确的用户名和密码后,系统登陆才会成功。在输入了错误的或者是不存在的用户名和密码时,系统会给出出错信息提示,指明登陆过程中的错误输入或者错误操作,以便用户进行正确的登陆。关键代码如下:1、确认按钮:String userid = adminBox.Text;SqlCommand cmd = new SqlCommand();SqlDataReader d

19、atareader;cmd.Connection = cn;if (cn.State = ConnectionState.Closed) cn.Open();string str;if (this.radiobtn.Checked = true) str = string.Format(select * from admin where username=0 and pwd=1, adminBox.Text.Trim(), sd.Encrypt(pwdBox.Text.Trim(); cmd.CommandText = str; datareader = cmd.ExecuteReader()

20、; if (datareader.Read() admin main = new admin(); this.Hide(); main.Show(); else MessageBox.Show(请正确输入:查无此人或密码输入错误!); cn.Close();else if (this.radiobtnstu.Checked = true) str = string.Format(select * from student where sno=0 and pwd=1, adminBox.Text.Trim(), sd.Encrypt(pwdBox.Text.Trim(); cmd.Command

21、Text = str; / userid = adminBox.Text; datareader = cmd.ExecuteReader(); if (datareader.Read() student main = new student (); this.Hide(); main.Show(); else MessageBox.Show(请正确输入:查无此人或密码输入错误!); cn.Close();else str = string.Format(select * from teacher where tno=0 and pwd=1, adminBox.Text.Trim(), sd.E

22、ncrypt(pwdBox.Text.Trim(); cmd.CommandText = str; / userid = adminBox.Text; datareader = cmd.ExecuteReader(); if (datareader.Read() teacher main = new teacher(); this.Hide(); main.Show(); else MessageBox.Show(请正确输入:查无此人或密码输入错误!); cn.Close();当输入用户名密码后,还能通过按Enter键登录系统,实现原理:在输入密码的文本框的KeyPress事件下,判断是否按了

23、Enter,如果按了就激发“登录”按钮的Click事件。如果用户输入的用户名密码不正确系统会通过MessageBox.Show(用户名或密码错误)提示出错。关键代码如下:private void Form1_Load(object sender, EventArgs e) txtName.Focus(); private void txtPwd_KeyPress(object sender, KeyPressEventArgs e) if (e.KeyChar = 13) btnSubmit_Click(sender, e); 图5.1.2是新用户注册的界面图5.1.2注册界面 主要代码如下:

24、Hash m_hash = new Hash(MD5); cn.Open(); SqlCommand cmd = new SqlCommand(); if (radiobtnstu.Checked = true) cmd.CommandText = string.Format(select * from student where sno=0, this.textBox6.Text.Trim(); / textBox2.Text = textBox6.Text; else if (radiobtntea.Checked = true) cmd.CommandText = string.Form

25、at(select * from teacher where tno=0, this.textBox6.Text.Trim(); / textBox2.Text = textBox6.Text; else / textBox2.ReadOnly = false; cmd.CommandText = string.Format(select * from admin where username=0, this.textBox6.Text.Trim(); cmd.Connection = cn; if (null = cmd.ExecuteScalar() string str; if (rad

26、ioButton1.Checked = true) str = string.Format(insert into admin(username,pwd) values(0,1), textBox6.Text.Trim(), m_hash.Encrypt(textBox7.Text.Trim(); else if (radiobtnstu.Checked = true) str = string.Format(insert into student(sno,sname,sage,entertime,sdept,connection,pwd,notice,sex) values(0,1,2,3,

27、4,5,6,7,8), textBox6.Text.Trim(), textBox1.Text.Trim(), textBox5.Text.Trim(), str1, comboBox2.Text.Trim(), textBox4.Text.Trim(), m_hash.Encrypt(textBox7.Text.Trim(), richTextBox1.Text.Trim(),comboBox1.Text.Trim(); else str = string.Format(insert into teacher(tno,tname,tage,entertime,sdept,connection

28、,pwd,notice,sex) values(0,1,2,3,4,5,6,7,8), textBox6.Text.Trim(), textBox1.Text.Trim(), textBox5.Text.Trim(), str1, comboBox2.Text.Trim(), textBox4.Text.Trim(), m_hash.Encrypt(textBox7.Text.Trim(), richTextBox1.Text.Trim(),comboBox1.Text.Trim(); cmd = new SqlCommand(str, cn); cmd.ExecuteNonQuery();

29、MessageBox.Show(添加用户成功!, 提示); else MessageBox.Show(用户 + login.userid.Trim() + 已经存在!, 提示); cn.Close(); this.Hide();进入窗体后,通过register_ Click()方法,将新用户的个人信息存入数据库,同时调用hash()函数将新用户设定的密码加密,保证密码的安全性。5.2学生模块设计学生模块主要包括学生选课、密码修改、成绩统计和个人信息查询。学生选课的功能是通过选课窗体实现的。如图5-2-1所示:图5-2-1学生选课界面主要代码如下:SqlConnection cn = BaseC

30、lass.DBConn.CyCon();DataSet ds = new DataSet();DataSet ds1 = new DataSet();数据刷新显示:private void display() SqlCommand cmd = new SqlCommand(); cmd.CommandText = string.Format(select 课程号,课程名,成绩,教工号 from 选课的学生信息 where 学生学号=0 ,login.userid.Trim(); cmd.Connection = cn; SqlDataAdapter adapter = new SqlDataA

31、dapter(cmd); ds.Clear(); adapter.Fill(ds, s); dataGridView1.DataSource = ds.Tabless; comboBox1.Items.Clear(); string str = string.Format(select cname from course except (select 课程名 from 选课的学生信息,course where 选课的学生信息.课程号=o and 学生学号=0), login.userid.Trim(); cmd = new SqlCommand(str, cn); cn.Open(); Sql

32、DataReader dr = cmd.ExecuteReader(); while (dr.Read() comboBox1.Items.Add(dr0.ToString(); cn.Close(); private void display1() SqlCommand cmd = new SqlCommand(); cmd.CommandText = string.Format(select * from 选课信息 ); cmd.Connection = cn; SqlDataAdapter adapter = new SqlDataAdapter(cmd); ds1.Clear(); a

33、dapter.Fill(ds1, s1); dataGridView2.DataSource = ds1.Tabless1;选课:private void button1_Click(object sender, EventArgs e) BaseClass.DBConn.getsqlcmd(insert into grade(sno,cno,tno) values(+login.userid.Trim()+,+dataGridView2.CurrentRow.Cells0.Value.ToString()+,+dataGridView2.CurrentRow.Cells4.Value.ToS

34、tring()+); display();private void stucourse_Load(object sender, EventArgs e) display(); display1();查询:private void button2_Click(object sender, EventArgs e) SqlCommand cmd =new SqlCommand(); cmd.CommandText=string.Format(select * from 选课信息 where 课程名 = 0,comboBox1.Text.Trim(); cmd.Connection = cn; Sq

35、lDataAdapter adapter = new SqlDataAdapter(cmd); ds1.Clear(); adapter.Fill(ds1, s1); dataGridView2.DataSource = ds1.Tabless1;退选:private void button3_Click(object sender, EventArgs e) if (dataGridView1.CurrentRow.Cells2.Value.ToString() != ) BaseClass.DBConn.getsqlcmd(delete from grade where sno=+logi

36、n.userid.Trim()+ and cno=+dataGridView1.CurrentRow.Cells0.Value.ToString()+ and tno=+dataGridView1.CurrentRow.Cells3.Value.ToString(); display(); 进入窗体后,首先xuan_Load()方法调用display()将选课的相关信息获得,以便显示在窗体。通过button2_Click()方法查询已选课程和待选课程,利用button1_Click()方法选择要选的课程,并把相关信息存入数据库的相关表中。密码修改有助于用户对自己信息的保护,实现该功能的界面如下

37、图5-2-2:图5-2-2密码修改主代码如下:SqlConnection conn = BaseClass.DBConn.CyCon();public updatepwd() InitializeComponent();Hash sd = new Hash(MD5);private void button1_Click(object sender, EventArgs e) if (textBox2.Text = ) MessageBox.Show(请输入密码); /textBox2.Focus(); else if (textBox2.Text != textBox3.Text) Messa

38、geBox.Show(两次密码不一致); / textBox3.Focus(); else SqlCommand cmd = new SqlCommand(update student set pwd= + sd.Encrypt(textBox2.Text.Trim() + where sno= + login.userid.Trim() + , conn); try conn.Open(); cmd.ExecuteNonQuery(); if (MessageBox.Show(密码修改成功, 提示, MessageBoxButtons.OK, MessageBoxIcon.Asterisk)

39、 = DialogResult.OK) this.Close(); catch (SqlException ex) MessageBox.Show(错误: + ex.Message); finally conn.Close(); private void button2_Click(object sender, EventArgs e) if (textBox4.Text = ) MessageBox.Show(请输入密码); /textBox2.Focus(); else if (textBox1.Text != textBox4.Text) MessageBox.Show(两次密码不一致)

40、; / textBox3.Focus(); else SqlCommand cmd = new SqlCommand(update teacher set pwd= + sd.Encrypt(textBox4.Text.Trim() + where tno= + login.userid.Trim() + , conn); try conn.Open(); cmd.ExecuteNonQuery(); if (MessageBox.Show(密码修改成功, 提示, MessageBoxButtons.OK, MessageBoxIcon.Asterisk) = DialogResult.OK) this.Close(); catch (SqlException ex) MessageBox.Show(错误: + ex.Message); finally

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

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

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁