ImageVerifierCode 换一换
格式:DOCX , 页数:38 ,大小:542.90KB ,
资源ID:10516610      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/10516610.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(数据库课程设计学生成绩管理系统.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

数据库课程设计学生成绩管理系统.docx

1、数据库课程设计学生成绩管理系统 数据库 课程设计说明书 题 目:学生成绩管理系统 院 系:信息与计算机科学系 专业班级:网络工程 学 号:* 学生姓名:* 指导老师:* 一 概述1.1.1 问题的提出 随着科技的发展,基本上所有的具有一定数量数据的机构都开始使用计算机数据库来做管理。几乎所有学校也都已经在使用计算机管理数据的机制,大大减少了学校学生成绩管理的工作量。系统概述:通过对学校日常教学管理中的课程、选课、学生、教师、成绩等相关内容进行分析,完成具有学生管理、成绩管理、课程管理等相关功能的小型数据库管理应用系统。基本要求:完成学生、班级、课程表的维护。 完成成绩表的维护、浏览查找 。 按

2、班级、按课程计算平均成绩、最高成绩、最低成绩、及格率。统计某学生、某学期的所有课程的平均成绩。 完成用户管理功能。 完成数据备份与恢复功能,1.1.2 本课题的意义通过该课程设计,可以达到把数据库理论知识更加的巩固加深,加强动手能力与实践能力,学以致用,与现实生活中的应用充分的结合起来。1.2设计环境 Sql server 2005二 需求分析2.1 系统功能要求设计此系统实现如下系统功能:(1)使得学生的成绩管理工作更加清晰、条理化、自动化。(2)通过用户名和密码登录系统,查询课程基本资料,学生所选课程成绩,修改用户密码等功能。 容易地完成学生信息的查询操作。(3) 设计人机友好界面,功能安

3、排合理,操作使用方便,并且进一步考虑系统在安全性,完整性,并发控制,备份和恢复等方面的功能要求。2.2 系统模块设计成绩管理系统大体可以分成二大模块如, 一是学生的基本信息模块,里面应该包含学生的各方面的基本信息;再者便是课程管理模块, 在该模块中应该包含有对学生成绩信息的查询和处理,如平均成绩、最好成绩、最差成绩以及不及格学生的统计等功能模块;再其次还有教师、课程等相关信息的模块; 2.3 数据字典 数据项是数据库的关系中不可再分的数据单位,下表分别列出了数据的名称、数据类型、长度、取值能否为空。利用SQL Server 2000建立“学生选课”数据库,其基本表清单及表结构描述如下:数据库中

4、用到的表:数据库表名关系模式名称备注Student学生表学生学籍信息表Course课程表课程基本信息表Teach教师表教师基本信息Stu_Cour选课表学生选课信息Score成绩选课成绩信息表Student基本情况数据表,结构如下:字段名字段类型Not Null说明SnoCharPrimary key学号SnamecharNot Null学生姓名Sdeptchar学院Sclasschar班级Sageintr年龄Ssexchar性别Teach基本情况数据表,结构如下字段名字段类型Not Null说明TnoCharPrimary key教师号TnamecharNot Null教师姓名Tsexcha

5、r性别Cnochar外部码所授课程Tageint年龄Tdeptchar学院Course数据表,结构如下:字段名字段类型约束控制说明Cnochar主键(primary key)课程号Cnamecharnot null课程名称Ctimeintnot null课时Stu_cour情况数据表,结构如下:字段名字段类型约束控制说明Cnochar外部键课程号Snochar外部键学号Score情况数据表,结构如下:字段名字段类型约束控制说明Cnochar外部键课程号Snochar外部键学号scoreint成绩三 概念模型设计由需求分析的结果可知,本系统设计的实体包括:(1)学生基本信息:学号,姓名,学院,班

6、级,年龄,性别。(2)课程基本信息: 课程名,课程号,学时。(3)教师基本信息:教师号,教师姓名,职称,年龄,性别,学院(4)学院基本信息:学院名、学院号、院长姓名这些实体间的联系包括:(1)每位学生可以学习多门课程,每门课程可供多位学生学习。(2)每门课可以由多个老师教,每个老师可以教多门课程(3)学生每选一门课就可以得到一个成绩,不选此课就不能取得该课程成绩由上述分析可得到系统的ER图:四 逻辑和物理结构设计4.1由系统ER图转化而得到的关系模式如下:(1)学生(学号,姓名,性别,年龄,学院,班级),其主关键字为学号;(2)课程(课程名,课程号,学时),其中主关键字为课程号;(3)教师(教

7、师号,教师姓名,职称,年龄,性别,学院,所授课程号)(4)选课(课程号,学号)其中主关键字为学号和课程号(4)成绩(课程号,学号,分数)其中主关键字为学号和课程号。4.2 确定关系模型的存取方法在将概念模型转换成物理模型之后,我们可以对物理模型进行设计,双击物理模型的关系,可以对该关系的名称、注释等信息进行查询。可对该关系的属性列进行设计,可分别设置其名称、码、数据类型以及主码、是否为空等。在实际设计中最常用的存取方法是索引发,使用索引可以大大减少数据的查询时间,在建立索引时应遵循:在经常需要搜索的列上建立索引; 在主关键字上建立索引;在经常用于连接的列上建立索引,即在外键上建立索引;在经常需

8、要根据范围进行搜索的列上创建索引,因为索引已经排序,其指定的范围是连续的等规则。才能充分利用索引的作用避免因索引引起的负面作用。4.3 确定数据库的存储结构确定数据库的存储结构主要指确定数据的存放位置和存储结构,包括确定关系、索引、日志、备份等的存储安排及存储结构,以及确定系统存储参数的配置。因为该成绩管理系统的数据量小,所以我们只用把数据存储在使用的电脑硬盘上,不用作更多的安排。(1)创建学生基本信息表:CREATE TABLE Student ( SNO CHAR(5) , SNAME CHAR(10) NOT NULL, SDEPT CHAR(2) NOT NULL, SCLASS CH

9、AR(2) NOT NULL, SAGE NUMBER(2), SSEX CHAR(2),CONSTRAINT SNO_PK PRIMARY KEY(SNO);2,创建表CourseCREATE TABLE Course(CNO CHAR(3),CNAME VARCHAR2(16) ,CTIME NUMBER(3),CONSTRAINT CNO_PK PRIMARY KEY(CNO)3,创建表Teach CREATE TABLE Teach( TNO VARCHAR(6), TNAME VARCHAR(8), TSEX CHAR(2), CNO CHAR(3), TAGE NUMBER(2),

10、 TDEPT CHAR(2), CONSTRAINT TT_PK PRIMARY KEY(TNO), CONSTRAINT CNO_FK FOREIGN KEY(CNO) REFERENCES Course(CNO)4,创建表Stu_cnoCREATE TABLE Score(SNO CHAR(5),CNO CHAR(3),CONSTRAINT SC_PK PRIMARY KEY(SNO,CNO),CONSTRAINT SNO_FK FOREIGN KEY(SNO) REFERENCES Student(SNO),CONSTRAINT CNOM_FK FOREIGN KEY(CNO) REFE

11、RENCES Course(CNO)5.创建成绩表CREATE TABLE Score(SNO CHAR(5),CNO CHAR(3),SCORE NUMBER(5,2),CONSTRAINT SC_PK PRIMARY KEY(SNO,CNO),CONSTRAINT SNO_FK FOREIGN KEY(SNO) REFERENCES Student(SNO),CONSTRAINT CNOM_FK FOREIGN KEY(CNO) REFERENCES Course(CNO)CONSTRAINT Score_FK FOREIGN KEY(SNO,CNO) REFERENCES Stu_cno

12、(SNO,CNO)二、插入数据1,StudentINSERT INTO Student VALUES(96001,马小燕,CS,01,21,女);INSERT INTO Student VALUES(96002,黎明,CS,01,18,男);INSERT INTO Student VALUES(96003,刘东明,MA,01,18,男);INSERT INTO Student VALUES(96004,赵志勇,IS,02,20,男);INSERT INTO Student VALUES(97001,马蓉,MA,02,19,女);INSERT INTO Student VALUES(97002,

13、李成功,CS,01,20,男);INSERT INTO Student VALUES(97003,黎明,IS,03,19,女);INSERT INTO Student VALUES(97004,李丽,CS,02,19,女);INSERT INTO Student VALUES(96005,司马志明,CS,02,18,男); 2,CourseINSERT INTO Course VALUES(001,数学分析,144);INSERT INTO Course VALUES(002,普通物理,144);INSERT INTO Course VALUES(003,微机原理,72);INSERT INT

14、O Course VALUES(004,数据结构,72);INSERT INTO Course VALUES(005,操作系统,64);INSERT INTO Course VALUES(006,数据库原理,64);INSERT INTO Course VALUES(007,DB_Design,48);INSERT INTO Course VALUES(008,程序设计,56);3,TeachINSERT INTO Teach VALUES(9401,王成钢,男,004,35,CS);INSERT INTO Teach VALUES(9402,李正科,男,003,40,CS);INSERT I

15、NTO Teach VALUES(9403,严敏,女,001,33,MA);INSERT INTO Teach VALUES(9404,赵高,男,004,28,IS);INSERT INTO Teach VALUES(9405,李正科,男,003,32,MA);INSERT INTO Teach VALUES(9406,李玉兰,女,006,43,CS);INSERT INTO Teach VALUES(9407,王成钢,男,004,49,IS);INSERT INTO Teach VALUES(9408,马悦,女,008,35,CS);INSERT INTO Teach VALUES(9409

16、,王成钢,男,007,48,CS);4,ScoreINSERT INTO Score VALUES(96001,001,77.5);INSERT INTO Score VALUES(96001,003,89);INSERT INTO Score VALUES(96001,004,86);INSERT INTO Score VALUES(96001,005,82);INSERT INTO Score VALUES(96002,001,88);INSERT INTO Score VALUES(96002,003,92.5);INSERT INTO Score VALUES(96002,006,90

17、);INSERT INTO Score VALUES(96005,004,92);INSERT INTO Score VALUES(96005,005,90);INSERT INTO Score VALUES(96005,006,89);INSERT INTO Score VALUES(96005,007,76);INSERT INTO Score VALUES(96003,001,69);INSERT INTO Score VALUES(97001,001,96);INSERT INTO Score VALUES(97001,008,95);INSERT INTO Score VALUES(

18、96004,001,87);INSERT INTO Score VALUES(96003,003,91);INSERT INTO Score VALUES(97002,003,91);INSERT INTO Score VALUES(97002,004,);INSERT INTO Score VALUES(97002,006,92);INSERT INTO Score VALUES(97004,005,90);INSERT INTO Score VALUES(97004,006,85);INSERT INTO Score VALUES(97004,008,75);INSERT INTO Sco

19、re VALUES(97003,001,59);INSERT INTO Score VALUES(97003,003,58) 五 数据库的实施与维护5.1 数据库的实施:此阶段主要任务包括创建数据库,加载初始数据,数据库试运行,数据库的安全性和完整性控制数据库的备份与恢复,数据库性能的监督分析和改仅,数据库的重组和重构等。首先在数据库中建立一个学生成绩管理系统数据库,然后新建一个数据源。部分截图和代码如下:学生表的增删改查:增加学生信息更新学生信息删除学生信息学生表增加、删除、修改代码(部分)using System;using System.Collections.Generic;using

20、 System.ComponentModel;using System.Data;using System.Data.OracleClient;using System.Drawing;using System.Linq;using System.Text;using System.Windows.Forms;namespace MyProgram public partial class Form3 : Form private string ConnectionString = Data Source=ahut; + User ID=Scott;Password=123456; priva

21、te OracleConnection conn = null; private OracleDataAdapter DataAdapter = null; private DataSet dataset = null; / private OracleCommand command= null; public Form3() InitializeComponent(); private void Form3_Load(object sender, EventArgs e) conn = new OracleConnection(ConnectionString); showData(); p

22、rivate void showData() string tname = ; try if (conn = null) conn.Open(); DataAdapter = new OracleDataAdapter(select * from student, conn); dataset = new DataSet(); DataAdapter.Fill(dataset); dataGridView1.DataSource = dataset; dataGridView1.DataMember = dataset.Tables0.ToString(); tname = dataset.T

23、ables0.ToString(); /先清除所有绑定,然后再重新绑定 textBox1.DataBindings.Clear(); textBox2.DataBindings.Clear(); textBox3.DataBindings.Clear(); textBox4.DataBindings.Clear(); textBox5.DataBindings.Clear(); textBox6.DataBindings.Clear(); textBox1.DataBindings.Add(Text, dataset, table.sno); textBox2.DataBindings.Add

24、(Text, dataset, table.sname); textBox3.DataBindings.Add(Text, dataset, table.sdept); textBox4.DataBindings.Add(Text, dataset, table.sclass); textBox5.DataBindings.Add(Text, dataset, table.sage); textBox6.DataBindings.Add(Text, dataset, table.ssex); catch (Exception ex) MessageBox.Show(ex.ToString();

25、 private void button1_Click(object sender, EventArgs e) string strOracle = insert into student values(; strOracle += + textBox1.Text;/学号 strOracle += , + textBox2.Text;/姓名 strOracle += , + textBox3.Text;/学院 strOracle += , + textBox4.Text;/班级 strOracle += , + textBox5.Text;/年龄 strOracle += , + textBo

26、x6.Text + );/性别 OracleCommand command = null; try command = new OracleCommand(); command.Connection = conn; command.CommandText = strOracle; conn.Open(); int n = command.ExecuteNonQuery();/执行Insert语句 if (n 0) MessageBox.Show(成功插入数据!); catch (Exception ex) MessageBox.Show(ex.Message); finally if (con

27、n != null) conn.Close(); command.Dispose(); showData(); private void button2_Click(object sender, EventArgs e) Form7 f7 = new Form7(); f7.Show(); private void button3_Click(object sender, EventArgs e) try OracleCommandBuilder builder = new OracleCommandBuilder(DataAdapter); int n = DataAdapter.Updat

28、e(dataset, Table); MessageBox.Show(成功更新数据,有 + n.ToString() + 行受到更新!); catch MessageBox.Show(更新不成功!); private void button4_Click(object sender, EventArgs e) string curNo = ; if (dataGridView1.Rows.Count = 1) return; int index = dataGridView1.CurrentRow.Index; dataGridView1.Rowsindex.Selected = true; curNo = this.dataGridView1.Rowsindex.Cells0.Value.ToString(); OracleCommand command = null; string strOracle = delete from student where sno= + curNo + ; try co

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1