《数据库概论》课程设计——学生成绩管理系统.doc_第1页
《数据库概论》课程设计——学生成绩管理系统.doc_第2页
《数据库概论》课程设计——学生成绩管理系统.doc_第3页
《数据库概论》课程设计——学生成绩管理系统.doc_第4页
《数据库概论》课程设计——学生成绩管理系统.doc_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

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

文档简介

目录1 绪 论11.1 概述11.1.1 问题的提出11.1.2 本课题的意义11.2 开发环境与工具介绍11.2.1 ADO.NET简介11.2.2 xxx研究状况12 系统需求分析与设计22.1 用户需求分析22.1.1 用户需求22.1.2 系统功能需求22.1.3 系统性能需求22.1.4 数据分析22.2 功能模块图及分模块功能描述22.2.1 系统的功能模块图22.2.2 系统功能模块简介22.3 数据库设计22.3.1 系统E-R图22.3.2 数据库逻辑结构设计23 系统实施33.1 建立数据库33.2 数据库连接33.3 主要模块实施33.3.1 登录模块的开发33.3.2 xxxxx33.4 系统测试33.4.1 软件测试的对象33.4.2 软件测试的结果34 系统说明44.1 开发环境44.2 系统安装、配置与发布应用程序的步骤4总 结5参考文献6附录:部分源代码7I1 绪 论1.1 概述1.1.1 问题的提出 随着科技的发展,基本上所有的具有一定数量数据的机构都开始使用计算机数据库来做管理。几乎所有学校也都已经在使用计算机管理数据的机制,大大减少了学校学生成绩管理的工作量。系统概述:通过对学校日常教学管理中的课程、选课、学生、教师、成绩等相关内容进行分析,完成具有学生管理、成绩管理、课程管理等相关功能的小型数据库管理应用系统。基本要求:完成学生、班级、课程表的维护。完成成绩表的维护、浏览查找。按班级、按课程计算平均成绩、最高成绩、最低成绩、及格率。统计某学生、某学期的所有课程的平均成绩。完成用户管理功能。完成数据备份与恢复功能,1.1.2 本课题的意义 本课题主要的目的是学生成绩管理系统,主要任务为建立学生信息管理系统,采用计算机对学生信息进行管理,进一步提高办学效益和现代化水平。帮助广大教师提高工作效率,实现学生信息管理工作流程的系统化、规范化和自动化。1.2 开发环境与工具介绍系统:Win7工具:SQL Server 2008和vs 2012(C#)2 系统需求分析与设计2.1 用户需求分析2.1.1 用户需求用户通过用户名和密码登录系统,查询课程基本资料,学生所选课程成绩,修改用户密码等功能。容易地完成学生信息的查询操作。设计人机友好界面,功能安排合理,操作使用方便,并且进一步考虑系统在安全性,完整性,并发控制,备份和恢复等方面的功能要求2.1.2 系统功能需求系统概述:通过对学校日常教学管理中的课程、选课、学生、教师、成绩等相关内容进行分析,完成具有学生管理、成绩管理、课程管理等相关功能的小型数据库管理应用系统。基本要求:(1) 完成学生、班级、课程表的维护(2) 完成成绩表的维护、浏览查找 (3) 按班级、按课程计算平均成绩、最高成绩、最低成绩、及格率(4) 统计某学生、某学期的所有课程的平均成绩。(5) 完成用户管理功能(6) 完成数据备份与恢复功能2.1.3 系统性能需求 学生成绩管理系统不仅仅是需要满足成绩相关的管理,同时一些课程选择以学生信息管理都是需要包括的。2.1.4 数据分析 以下是该系统用到的数据表:数据库表名关系模式名称备注Student学生表学生基本信息表Course课程表课程基本信息表Teach教师表教师基本信息Score成绩选课成绩信息表学生表情况(Student):课程表情况(Course):教师表情况(Teach):成绩表情况(Score):2.2 功能模块图及分模块功能描述2.2.1 系统的功能模块图 2.2.2 系统功能模块简介 成绩管理系统大体可以分成二大模块如,一是学生的基本信息模块,里面应该包含学生的各方面的基本信息;再者便是课程管理模块,在该模块中应该包含有对学生成绩信息的查询和处理,如平均成绩、最好成绩、最差成绩以及不及格学生的统计等功能模块;再其次还有教师、课程等相关信息的模块;2.3 数据库设计2.3.1 系统E-R图 实体E-R图性别学号班级系年龄学生姓名 课程号学时数课程名课程表性别课程号授课日期教师姓名系教师2.3.2 数据库逻辑结构设计 这些实体间的联系包括:(1) 每位学生可以学习多门课程,每门课程可供多位学生学习。(2) 每门课可以由多个老师教,每个老师可以教多门课程(3) 学生每选一门课就可以得到一个成绩,不选此课就不能取得该课程成绩4.1由系统ER图转化而得到的关系模式如下:1 学生(学号,姓名,性别,年龄,学院,班级),其主关键字为学号;2课程(课程名,课程号,学时),其中主关键字为课程号;3教师(教师号,教师姓名,职称,年龄,性别,学院,所授课程号)4成绩(课程号,学号,分数)其中主关键字为学号和课程号。 3 系统实施与结果3.1 建立数据库创建学生表并插入数据create table Student (Sno char(5),Sname varchar(8) not null,Ssex char(2) check(Ssex in(男,女),Sdept varchar(16),Sclass varchar(5),Sage smallint,constraint Sno_pk primary key(Sno);insert into Student values(12001,张宇,男,计算机学院,软,21);insert into Student values(12002,吴秀,女,管工学院,管,21);insert into Student values(12003,赵志勇,男,计算机学院,软,18);insert into Student values(12004,李丽,女,计算机学院,计,19);insert into Student values(12005,黎明,男,计算机学院,软,20);insert into Student values(12006,曹洋,女,数理学院,数,20);insert into Student values(13001,宁易平,男,数理学院,数,19);insert into Student values(13002,聂兴华,男,管工学院,管,21);insert into Student values(13003,孙芸芸,女,计算机学院,计,19);insert into Student values(13004,张涛,男,数理学院,数,21);insert into Student values(13005,陈龙,男,管工学院,管,21);insert into Student values(13006,王强,男,数理学院,数,18);创建教师表并插入数据create table Teach (Tno char(4),Tname varchar(8) not null,Tsex char(2) check(Tsex in(男,女),Tdept varchar(16),Tage smallint,Cno char(4),constraint Tno_pk primary key(Tno),constraint Cno_fk foreign key(Cno) references Course(Cno);insert into Teach values(1201,王成刚,男,计算机学院,40,1001);insert into Teach values(1203,严敏,女,数理学院,42,1004);insert into Teach values(1204,赵高,男,管工学院,43,1003);insert into Teach values(1205,刘玉兰,女,计算机学院,50,1008);insert into Teach values(1206,王成刚,男,管工学院,46,1007);insert into Teach values(1207,马悦,女,数理学院,46,1006);insert into Teach values(1208,陈斌,男,计算机学院,44,1002);insert into Teach values(1209,张国平,男,数理学院,42,1001);insert into Teach values(1210,李丽,女,管工学院,38,1005);insert into Teach values(1202,李正科,男,计算机学院,38,1002);创建课程表并插入数据create table Course (Cno char(4),Cname varchar(8),Ctime int,constraint Cno_pk primary key(Cno);insert into Course values(1001,数学分析,144);insert into Course values(1002,离散数学,60);insert into Course values(1003,微机原理,80);insert into Course values(1004,数据结构,72);insert into Course values(1005,操作系统,80);insert into Course values(1006,数据库,80);insert into Course values(1007,编译原理,60);insert into Course values(1008,程序设计,40);创建成绩表并插入数据create table Score(Cno char(4),Sno char(5),Score float,constraint CS_pk primary key(Cno,Sno),constraint Sno_fk foreign key(Sno) references Student(Sno),constraint Cnos_fk foreign key(Cno) references Course(Cno),constraint Sck check(Score=0 and Score 0) MessageBox.Show(成功添加学生记录!); catch (Exception) MessageBox.Show(添加失败!); / MessageBox.Show(ex.Message); finally if (conn != null) conn.Close(); command.Dispose(); showData(); private void but_del_Click(object sender, EventArgs e) /删除 if (MessageBox.Show( 确定要删除该学生信息?,删除信息,MessageBoxButtons.OKCancel,MessageBoxIcon.Question) = DialogResult.OK) string curNo = ; if (dataGridView1.Rows.Count 0) MessageBox.Show(成功删除学生记录!); catch (Exception ex) MessageBox.Show(ex.Message); finally if (conn != null) conn.Close(); command.Dispose(); showData(); private void but_up_Click(object sender, EventArgs e) /更新 try SqlCommandBuilder builder = new SqlCommandBuilder(DataAdapter); int n = DataAdapter.Update(dataset, Table); MessageBox.Show(成功更新学生记录,有 + n.ToString() + 行受到更新!); catch MessageBox.Show(更新不成功!); private void button_select_Click(object sender, EventArgs e) this.Hide(); Form3 ff = new Form3(); ff.ShowDialog(); this.Close(); private void Form3_Load(object sender, EventArgs e) try conn = new SqlConnection(ConnectionString); conn.Open(); DataAdapter = new SqlDataAdapter(); dataset = new DataSet(); cmd = new SqlCommand(); cmd.Connection = conn; cmd.CommandText = SELECT * FROM student; DataAdapter.SelectCommand = cmd; DataAdapter.Fill(dataset, t1); comboBox1.Items.Clear(); /先获取所有的字段,以用于构造查询条件 for (int i = 0; i dataset.Tablest1.Columns.Count; i+) comboBox1.Items.Add(dataset.Tablest1.Columnsi.ToString(); dataset.Clear(); comboBox2.Items.Add( = ); /设置比较运算符 comboBox2.Items.Add( ); comboBox2.Items.Add( like ); catch (Exception ex) MessageBox.Show(ex.Message); private void button_select_Click(object sender, EventArgs e) /检索 string tb1 = textBox1.Text; if (comboBox2.Text = like ) tb1 = % + textBox1.Text + %; string strSQL = SELECT * FROM Student Where ; strSQL += comboBox1.Text + comboBox2.Text + + tb1 + ; try cmd.CommandText = strSQL; DataAdapter.SelectCommand = cmd; dataset.Clear(); DataAdapter.Fill(dataset, t1); dataGridView1.DataSource = dataset; dataGridView1.DataMember = t1; catch MessageBox.Show(请正确设置检索条件!); finally if (conn != null) conn.Close(); 学生成绩管理部分代码(成绩分析): private void 班级ToolStripMenuItem_Click(object sender, EventArgs e) /按班级分析 string tname = ; if (conn != null) conn.Open(); string strSQL = SELECT * FROM Class_avg ; try dataset = new DataSet(); DataAdapter = new SqlDataAdapter(strSQL, conn); /创建数据提供者 DataAdapter.Fill(dataset); dataGridView1.DataSource = dataset; dataGridView1.DataMember = dataset.Tables0.ToString(); tname = dataset.Tables0.ToString(); catch MessageBox.Show(失败); finally if (conn != null) conn.Close(); private void 课程ToolStripMenuItem_Click(object sender, EventArgs e) /按课程分析 string tname = ; if (conn != null) conn.Open(); string strSQL = SELECT * FROM C_avg ; try data

温馨提示

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

评论

0/150

提交评论