《数据库原理》课程设计报告设计题目成绩管理系统学生姓名马伟光所在学院计算机与通信学院专业及班级软件1202指导教师龙巧云老师完成日期2014年6月20日目录1.概述 (1)1.1简介设计步骤 (1)1.2开发环境简介 (1)2.需求分析 (2)2.1开发背景 (2)2.2开发目的 (2)2.3功能需求 (2)2.4相关数据 (3)数据流图 (4)数据字典 (5)3.系统设计 (7)4.数据库设计 (8)4.1概念设计(E-R) (8)4.2逻辑设计 (8)设计成员及分工情况 (9)5.详细设计 (9)6.系统总结 (13)7.结束语 (16)8.参考文献 (16)1.概述1.1 简介设计步骤该学生成绩管理系统,实现简单的密码修改、成绩查询、课程查询、学生查询等操作,并能实现简单的数据统计。
此系统主要完成用户密码登录、用户密码的修改、成绩查询、课程查询、学生查询、具体成绩查询等基本功能。
(一)用户密码登录:在登录程序之前会先弹出一个登录对话框,在正确的输入了数据库中存储的用户和密码后才能登录程序。
(二)用户密码的修改在成功登录了程序之后用户可以根据自己的需要修改当前密码。
(三)成绩查询1.成绩修改前选中要修改的成绩信息,然后进行修改。
2.成绩添加直接弹出添加对话框,然后进行添加。
3.成绩删除前选中要删除的成绩信息,然后直接删除。
(四) 课程查询1.课程修改实现对课程名、学时、学分的修改。
2.课程添加对一门新开设的课程进行录入,并存入数据库。
3.课程删除对一门不再开设的课程进行删除,并从数据库中删除。
(五)学生查询1.学生信息修改修改选中当前学生的信息。
2.学生信息添加增加新学生的信息。
3.学生信息删除删除选中当前学生信息。
1.2 开发环境简介1)Microsoft visual c++ 6.0Visual C++是一个功能强大的可视化软件开发工具。
自1993年Microsoft公司推出Visual C++1.0后,随着其新版本的不断问世,Visual C++已成为专业程序员进行软件开发的首选工具。
Visual C++6.0不仅是一个C++编译器,而且是一个基于Windows操作系统的可视化集成开发环境(integrated development environment,IDE)。
Visual C++6.0由许多组件组成,包括编辑器、调试器以及程序向导AppWizard、类向导Class Wizard等开发工具。
这些组件通过一个名为Developer Studio的组件集成为和谐的开发环境。
2)Microsoft SQL Server 2000和与系统相关的SQL 语言介绍数据定义DDL(data definition language)数据定义语言是指对数据的格式和形态下定义的语言,他是每个数据库要建立时候时首先要面对的,举凡数据分哪些表格关系、表格内的有什么栏位主键、表格和表格之间互相参考的关系等等,都是在开始的时候所必须规划好的。
2.需求分析2.1开发背景随着学校向全国及至世界范围的持续扩张,学生人数的增加,对于学生的信息管理也越来越复杂,要求也越来越高,因此需要一个全面、详细的信息管理系统,以便完成对学生信息的管理。
无纸化的环境是技术时代的一个梦想,也是许多学校和公司越来越意识到的一个真实世界。
以前是由学生档案和公告栏来提供各种信息及通告新的变化,而现在这个繁杂的工作已被网站和内部计算机网络所取代。
使得学生信息的管理更方便、安全。
根据调查得知,现在广大学生进行信息提交的主要方式是基于文件、表格等纸介质的手工处理,学生信息管理部门信息处理工作量大,容易出错,且管理方面因人而异。
然而学校网上学生信息管理系统应该覆盖各个所需功能,使各级管理人员和广大教职工在信息系统的辅助下进行工作,提高管理的整体水平。
使得学生信息管理更方便。
学生信息管理系统,可以用集中的数据库将与人力资源管理相关的信息全面、有机地联系起来,有效地减少了信息更新和查找中的重复劳动,保证了信息的相容性,从而大大地提高了工作效率,还能使原来不可能提供的分析报告成了可能。
在采用和实施学生信息管理系统之后,就会将依赖于人的过程改为依赖于计算机系统的过程。
学校管理人员只要获取了相应的权限,就可以随时进入系统,直接查阅相应的信息。
采用和实施学生信息管理系统不仅仅是为了提高工作效率。
为了除掉手工记录的低效率工作方式,运用信息化管理,提高工作效率,开发本系统。
应该看到,在实施学生信息管理系统后,经过整合的、较为全面、准确、一致和相容的信息不仅可以让学校领导对本学校学生资源的现状有一个比较全面和准确的认识,同时也可以生成综合的分析报表供学校领导人在决策时参考。
2.2 开发目的学生成绩管理系统是应对学生人数增多、信息量增大的问题,实现管理的现代化、网络化,逐步摆脱当前学生成绩管理的人工管理方式,提高成绩管理效率而开发的。
希望该开发程序能够解决学生信息存储、学生成绩查询、录入还有课程查询等一系列功能,并提供了对各功能模块的查询和更新功能,且这两种功能基本上是通过存储过程来实现的,其中学生成绩查询和学生信息查询是系统开发的重点。
2.3 功能需求1)教职工:a.信息要求:对学生成绩的了解,对学生成绩会有一个成体的了解,在今后的课程教学中可以对自己进行改进。
同时还可以对教授的课程进行修改和重设。
还可以进一步了解学生的信息,加深对学生的了解,便于因材施教。
b.处理要求:当学生基本信息发生变化时,老师能对其进行修改。
比如某些同学中有转校、后转来该系或转到其他系中,老师要能根据事实情况进行更新。
需要有的操作是修改、删除、增加。
能够管理课程信息。
如老师进行排课的时候能够有序的安排,不会出现错排或重复等一系列状况。
能够进行课程名、课时、学分的修改、删除和增添。
对成绩的管理,能够进行成绩的录入、修改、删除,能够清晰的了解学生的成绩和大体情况,以便做出相应的总结和改进。
c.安全性与完整性要求:安全性要求:1.系统应设置访问用户的标识以鉴别是否是合法用户,并要求合法用户设置其密码,保证用户身份不被盗用;2.系统应对不同的数据设置不同的访问级别,限制访问用户可查询和处理数据的类别和内容;3.系统应对不同用户设置不同的权限,区分不同的用户,如区分普通用户(学生),教职工。
完整性要求:1.各种信息记录的完整性,信息记录内容不能为空;2.各种数据间相互的联系的正确性;3.相同的数据在不同记录中的一致性。
2)学生:a.信息要求:能够查询自己的成绩信息和大家的整体成绩好做出对自己的新的定位,同时还有更改自己的学生信息,还有就是查询新的课程信息。
b.处理要求:当学生发现自己信息出现错误时,可以根据自己的实际情况来进行更改,比如某同学发现自己的年龄存储出现了错误就需要相应的机制进行修改、删除等。
同时还可进入成绩查询系统。
在该界面中同学可以查询自己的成绩,还可以查询整个科目的全部成绩。
2.4 相关数据学生成绩管理系统就是对学生成绩信息的管理,所以首先我们需要知道的是学生有那些信息,并且是怎样进行分类的。
学生信息包含:学生基本信息、课程基本信息、成绩信息。
学生基本信息根据要求应该包括学生对应的学号,姓名,性别,系别,学生年龄等;课程基本信息应该包课程号,课程名,课时,学分等;成绩表包含课程号,学号,成绩等。
与学生唯一一一对应的是学号,所以学号是唯一的主键,其他的都不能是,根据学号我们可以查找学生的基本信息,还有学生姓名等有关信息;根据课程号可以知道学生对应的成绩等。
与课程一一对应的是课程号,所以课程号是唯一主码,其他的都不是,根据课程号我们可以查询课程的基本信息,如课程名、对应的课时和对应的学分等。
与成绩对应的有两个主码,一个是课程号还有一个是学好。
只有这两个同时确定了之后才能确定一个准确的成绩。
在用户表中可以根据用户需要进行密码的修改等一系列操作。
综合分析对信息管理系统分四个表:用户表(用户名,用户密码,用户等级)学生表(学号,姓名,性别,系别,学生年龄)课程表(课程号,课程名,课时,学分)成绩表(课程号,学号,成绩)数据流图1)功能流图录入学生信息录入学生成绩录入课程信息查询学生成绩学生教职工学生课程成绩该数据流图主要体现教职工对学生信息、课程信息和学生成绩的管理,然后存储的信息作用于查询系统。
在学生能够操作的只有成绩查询。
2)登录流图用户信息身份验证用户密码修改数据字典名字:学生信息描述:学生成绩管理中存储的所有学生信息(包括所有学生查询的所需信息)定义:学生信息=学生学号+学生姓名+学生性别+院系+学生年龄位置:存储输出供查询名字:课程信息描述:有多个课程必要的信息组成定义:课程信息=课程号+课程名 +课时+学分位置:存储输出供查询名字:用户表信息描述:用户情况的信息定义:用户信息=用户名+用户密码+用户位置:存储输出供查询名字:学生成绩信息输入:学生姓名输出:相应学生的成绩信息名字:查询信息描述:用户所提出的查询请求定义:查询信息=[课程查询信息|学生成绩查询信息]位置:课程表学生表成绩表名字:添加信息输入:学号,学生姓名,学生性别,院系,学生年龄输出:新输入的学生信息名字:删除信息输入:选中要删除的学生信息输出:删除完成课程数据字典:属性名存储代码类型长度课程存储号course_id int 4课程号course_no int 4课程名course_name char 10课时course_hour int 4学分course_credit int 4状态active_status char 2学生数据字典:属性名存储代码类型长度学生存储号student_id int 4 学号student_no char 8 学生姓名student_name char 6 学生性别student_sex char 2 院系student_phone char 6 状态active_status char 2 学生年龄student_age char 10成绩数据字典:属性名存储代码类型长度成绩存储号score_id int 4 学号student_no chat 8 课程号course_no int 4成绩score int 4状态active_status char 2 用户数据字典:属性名存储代码类型长度用户名user_name varchar 50 用户密码user_password varchar 50 用户等级user_level char 10 状态active_status char 10 用户存储号user_id int 43.系统设计学生成绩管理系统学生信息添加学生姓名查询学生信息删除学生信息修改学生信息管理学生成绩查询课程名查询课程信息管理课程删除课程增添课程修改4.数据库设计4.1 概念设计(E-R 图)用户课程学生成绩查询修改选择1OM1VQPN学号院系学生性别学生姓名学生年龄用户名用户密码用户权限课时课程名学时课程号4.2 逻辑设计(与具体的DBMS 有关的表结构)该设计以概念结构设计中的E-R 图为主要依据,设计出相关的整体逻辑结构。