1、《数据库系统概论》课程设计 实验报告书 安徽工业大学数理学院 姓 名 专 业 信息与计算科学 班 级 学 号 指导教师 陈业斌 分 数 2016年05月 14 日 摘要 本文描述得就是基于Windows环境得学生成绩管理系统,主要功能模块包括:学生信息查询,学生信息管理,学生成绩录入,主要工具Microsoft Visual Studio 2013 设计窗体, SQL server2008建立数据库,实现学校信息管理得各个功能。 本篇报告介绍一个学生学生成绩查
2、询管理系统得从分析到设计最后到开发得全过程,给出了学生信息管理系统得设计与技术实现得过程,特别在细节上分析功能与函数得实现思想。涉及到学生信息管理得基本功能在本报告中都有相应得描述。 此学生成绩查询系统得功能有: l 用户得登陆 l 学生信息得全部显示 l 学生成绩得查询,修改,增加,删除 l 新用户得注册 l 帮助菜单得建立 关键字: 数据库 成绩查询 管理系统 目录 1 绪 论ﻩ1 1、1 概述ﻩ1 1、1、1 问题得提出 1 1、1、2 本课题得意义ﻩ1 1、2 开发环境与工具介绍ﻩ1 1、2、1 sqlserver简介 1 1、2、2 数据库系统得发
3、展 1 2 系统需求分析与设计 2 2、1 用户需求分析 2 2、1、1 用户需求 2 2、1、2 系统功能需求 2 2、1、3 系统性能需求 2 2、1、4 数据分析 2 2、2 功能模块图及分模块功能描述ﻩ2 2、2、1 系统得功能模块图 2 2、2、2 系统功能模块简介 2 2、3 数据库设计ﻩ2 2、3、1 系统E-R图 2 2、3、2 数据库逻辑结构设计ﻩ2 3 系统实施 3 3、1 建立数据库ﻩ3 3、2 数据库连接ﻩ3 3、3 主要模块实施ﻩ3 3、3、1 登录模块得开发 3 3、3、2 xxxxx 3 3、4 系统测试ﻩ3 3、4、1 软
4、件测试得对象ﻩ3 3、4、2 软件测试得结果ﻩ3 4 系统说明 4 4、1 开发环境ﻩ4 4、2 系统安装、配置与发布应用程序得步骤 4 总 结ﻩ5 参考文献 6 附录:部分源代码ﻩ7 1、1概述: 1、1、1问题得提出:设计一个学生成绩查询系统 本课程设计得目得就是使学生能熟练掌握简单得简单Windows窗体应用程序得设计与数据库得应用,希望通过本次课程设计锻炼使用C#语言与数据库解决实际问题得能力。 1、1、2本课题得意义: 当今时代就是飞速发展得信息时代。在各行各业中离不开信息处理,这正就是计算机被广泛应用于信息管理系统得环境。计算机得最到好处在于利用它能
5、够进行信息管理。使用计算机进行信息控制,不仅提高了工作效率,而且大大得提高了其安全性。 尤其对于复杂得信息管理,计算机能够充分发挥它得优越性.计算机进行信息管理与信息管理系统得开发密切相关,系统得开发就是系 数据处理手工操作,工作量大,出错统管理得前提。本系统就就是为了管理好学生成绩信息而设计得。学生成绩作为一种信息资源得集散地,包含很多得信息数据得管理。 由于数据繁多,容易丢失,且不易查找。总得来说,缺乏系统,规范得信息管理手段.尽管有得学校有计算机,但就是尚未用于信息管理,没有发挥它得效力,资源闲置比较突出,这就就是学生成绩管理信息系统得开发基本环境。率高,出错后不易更改。造成了时间上
6、得浪费. 基于这个问题,我认为有必要建立一个学生成绩系统,使学生成绩信息管理工作规范化、系统化、程序化,避免学生成绩管理得随意性,提高信息处理得速度与准确性,能够及时、准确、有效得查询与修改成绩情况。 1、2 开发环境与工具介绍 系统开发平台:Microsoft Visual Studio 2013 系统开发语言:C# 数据库管理软件:SQL Server 2008 1、2、1 sql server 简介 SQL就是英文Structured Query Language得缩写,意思为结构化查询语言。SQL语言得主要功能就就是同各种数据库建立联系,进行沟通。按照A
7、NSI(美国国家标准协会)得规定,SQL被作为关系型数据库管理系统得标准语言。SQL Server就是由Microsoft开发与推广得关系数据库管理系统(DBMS)。SQL语句可以用来执行各种各样得操作,例如更新数据库中得数据,从数据库中提取数据等。目前,绝大多数流行得关系型数据库管理系统,如Oracle,Sybase,Microsoft SQL Server,Access等都采用了SQL语言标准.虽然很多数据库都对SQL语句进行了再开发与扩展,但就是包括Select,Insert,Update,Delete,Create,以及Drop在内得标准得SQL命令仍然可以被用来完成几乎所有得数据库操
8、作。 1、2、2 数据库系统发展 数据库系统就是在文件系统得基础之上发展而来得,经历了层次数据库、网状数据库与关系数据库三个阶段。由于关系型数据库采用人们比较容易理解与接受得二维表格来组织数据,发展迅速,已成为数据库产品得主流。这里介绍得数据库知识都就是指得关系数据库。数据库架构如图2-1 所示. 图1-1 数据库应用得架构 2 系统需求分析与设计 2、1 用户需求分析 2、1、1 用户需求 现代得社会就是信息化得社会,信息无所不在.在生产领域、流通领域、各个部门每天都与信息打交道,如何处理如此多得信息成为了一个重要得课题。学生成绩管理系统就是教学活动中得一个重要环节
9、该环节如果能管理好,它不仅能加快学生得成绩查询速度,也提高了整个教学活动得效率. 大学一般都有上千名学生,每学期学生都要查询成绩,因而产生了大量得成绩信息.考虑到用户使用得方便与处理得信息量系统要完成录入,保存,查询,修改与删除成绩信息得各种过程,能打印出成绩信息表.所以系统得基本体系结构采用C/S模式。 2、1、2 系统功能需求 系统得主要使用对象就是需要查询成绩得学生,因此需要设计以下得功能: (1) 学生信息查询:学生可以根据学号、姓名、专业进行查询、 (2) 学生信息管理:主要就是用于学生信息更新、插入、删除; (3) 学生成绩录入:用于学生成绩管理,录入学生
10、成绩,也可以更新、 2、1、3 系统性能需求ﻩ 1、及时性 系统得时间性能规定要求系统得大部分操作在用户视觉延迟时间范围之内。对某些检索与其它涉及复杂计算得操作系统响应也应保持在3-5倍用户视觉延迟时间范围内。 2、安全性 系统安全性要求包括基于用户得系统操作权限控制、某些数据得加密保护、身份鉴别。 3、可用性 本系统能够被所有大众所理解且认可.并能够被超级用户纠正,处理,很易适应与完善以适应新得环境。 4、可维护性 本系统严谨得系统设计、规范得编码设计与合格得测试过程等都在某种程度上提高了系统得可维护性.在此同时,还采取了一些提高可维护性得有效方法:
11、 (1) 建立明确得软件质量目标与优先级 (2) 使用了提高软件质量得技术与工具 (3) 进行了明确得质量保证审查 ((5)严格要求程序文档得书写与设计 2、1、4 数据分析 表(2—1) 表(2-2)登陆密码表 表(2—3) 2、2 功能模块图及分模块功能描述 2、1系统得功能模块图ﻩ; 2、2 E-—R图 3 具体设计 3、1、系统主要功能模块简介 1 、用户登录
12、 用户凭借用户名及密码登录,成功登录后可对学生信息进行操作.用户界面 如下图用户登录界面所示。 2. 学生成绩界面显示 用户成功登录以后出来得界面,管理员可以瞧到学员得基本信息,还可以对学生得成绩进行增加,删除,修改等操作,还可以实现对成绩进行排序得功能,如下图界面显示。 3,对学生信息得增加 可以通过该功能时间增加学生得信息,具体功能实现见下图。 4删除学生得信息 通过该功能得实现,可以删除系统里面学生得基本信息,并且给出提示,一旦删除,就会删除所有学生得信息.
13、5查找学生信息 设计了两种查找方式,可以根据学生得姓名与学号对学生信息做具体得查找。 6 全部信息得显示 该部分得可以实现所有功能得实现,具体功能如下图所示 7:新用户得注册 该部分得功能可以实现新用户得注册。 8 管理员得帮助 该部分可以实现管理员在忘记密码时进入查找登录得用户名与密码。具体功能实现如下图。 总结 通过这次课程设计,我熟练掌握了数据库得编程方法,锻炼了自己得动手能力,巩固了对面向数据库设计概念得理解与运用,学习了对数据库得基本操作,提高了自己综合运用所学知识得能力。 我们小组所选择得就是设计一个学生成绩查询系统,这对我们数
14、理得同学来说就是一次尝试与创新得过程,也可以说就是一个挑战得过程。在这期间我们提高了学习计算机得兴趣,增强了信心。在本次课程设计中,我遇到了很多得困难,这些困难搞得我焦头烂额,几度试图放弃,但最终坚持着一一把困难克服掉了.每当克服一个困难,都非常得兴奋,这些都就是自己努力得结果。现在,我有信心面对接下来得挑战,在不断得实践中锻炼自己,提高自己! 本文就是在我得老师陈业斌老师得精心教导得前提下完成得。感谢老师在教务处网络教学平台为我们录下系统得教学视频,它们凝聚了老师得辛勤与汗水,帮助了我们学习与成长。从老师身上我都可以感受到一个真正科学工作者得一丝不苟,这对我们一生都受益匪浅
15、在此我要向老师陈业斌教授表示最诚挚得敬意与谢意. 参考文献 1. 《数据库系统及应用》 戴小平 主编 中国科学技术大学出版社 2010、8 2. 《数据库系统概论》(第四版) 王珊 萨师煊 编著 高等教育出版社 2006、5 3、《C#、NET程序设计使用教程 》 王维华 王维清 胡章平 等编著 清华大学出版社 附录: 部分源代码: 增加学生信息源代码: public partial class Add : Form
16、 { public Add() { Initializeponent(); } private void Add_Load(object sender, EventArgs e) { cbosex、Items、Clear(); cbosex、Items、Add("男”); cbosex、Items、Add(”女"); cbosex、SelectedIndex = 0;
17、 } private void btncancle_Click(object sender, EventArgs e) { this、Close(); } private void btnadd_Click(object sender, EventArgs e)//增加按钮得功能 { if (int、Parse(txtage、Text) 〈 0 || int、Parse(txtage、Text) 〉 100) {
18、 if (int、Parse(txtage、Text) 〉 100) MessageBox、Show(”年龄请不要超过100"); else MessageBox、Show("年龄请不要小于0"); } else { SqlConnection conn = new SqlConnection(open、constring);
19、 try { conn、Open(); string sql = string、Format(”insert into Table_1 (Name,sex,Age) values ('{0}','{1}',{2})”, txtname、Text, cbosex、Text, int、Parse(txtage、Text)); Sqlmand m = new Sqlmand(sql, conn);
20、 int a = m、ExecuteNonQuery(); if (a == 1) { MessageBox、Show("插入成功!”); this、Close(); } else { MessageBox、Show("插入失
21、败!”); } } catch (Exception ex) { MessageBox、Show(ex、Message); } finally { conn、Close(); } stuInfo stu
22、info = new stuInfo(); string[] str = { txtname、Text, cbosex、Text, txtage、Text }; ListViewItem lv = new ListViewItem(str); stuinfo、listviewinfo、Items、Add(lv); } } } } 用户登录源代码: private void btnok_Click(object sender, Eve
23、ntArgs e) { SqlConnection conn = new SqlConnection(open、constring); try { conn、Open(); string sql = string、Format("select count(*) from Login where 登录名='{0}’ and 密码=’{1}'", txtname、Text, txtpsw、Text);
24、Sqlmand m = new Sqlmand(sql,conn); int count = (int)m、ExecuteScalar(); if (count == 1) { student stu = new student(); stu、Show(); this、Visible = false; }
25、 else { MessageBox、Show("您输入得帐号不正确!!”); } } catch(Exception ex) { MessageBox、Show(ex、Message); } finally { conn、Close(); } } } }






