数据库系统原理
课程设计报告
设计题目
专业班级
学 号
姓 名
成 绩
评 语:
二零##年七月
1 系统开发概述
1.1 系统开发背景
随着当今科学技术的飞速发展和信息量的暴增,对计算机技术的应用已十分广泛,计算机也已成为各行各业的一个重要工具。而通过计算机技术中的数据库对数据进行管理已成了几乎所有21世纪的机构和学校的必选之路。高效率的数据库管理机制与当代社会的快节奏的生活和工作方式相契合,为人们的工作和生活带来了极大的方便。目前随着各大高校的扩招,在校生数量庞大。拥有一款性能良好的学生成绩管理系统,对于加强在校生的成绩管理能起到积极的作用。并且还可以为在校生随时查阅自己的成绩信息、教师录入成绩、管理员进行信息维护等提供方便,为学校节省了大量的人力物力财力等资源。学生成绩管理智能信息管理系统,不仅降低了学校学生成绩管理时的复杂和麻烦的程度,而且还大大提高了工作效率,具有处理数据速度更快、信息量更多、更加准确、更加简便等特点。
该学生成绩智能信息管理系统是以SQL数据的查询语言编写,系统管理员,学生,老师只需要通过简单的操作,就可以了解本系统软件的基本工作原理,用户只需要进行输入一些简单的汉字,数字,或用鼠标进行点击就可达到自己想要的目标。
1.2 系统功能需求分析
1.2.1问题的提出
为了提高学校学生成绩信息的管理效率 ,方便学生教师对学生对学生成绩信息进行查询,方便学校教务处管理员去管理和查询学生信息,建立一个学生成绩智能信息管路系统,使学生信息管理工作规范化、系统化、程序化,避免学生成绩管理的随意性,提高信息处理的速度和准确性,能够及时、准确、有效的查询和修改学生信息是必须而且十分切的工作。本次课程设计题目为《学生成绩智能信息管理系统》,设计成绩管理系统的登陆界面、老师对学生成绩的查询、学生对学生成绩的查询、教务员对学生成绩的增删改查统计等内容。本功能实现对学生信息、教师信息的管理和统计、课程信息和成绩信息查看及维护。
1.2.2、系统的业务功能分析
学生成绩智能管理信息系统应当将学生与教务员分开,因为增、删、改、统计的权限应当只有教务员才有,学生只能查询与自己相关的记录,教师只能查询自己所授课程的记录,而教务员则能录入数据,进行增删改和统计。另外,在日常学习生活中,,为了方便老师和学生了解成绩相关信息,该系统还需要提供平均分、最高分、最低分、排名等功能供老师和学生查询。
具体分析:按照了老师、学生、管理员三种角色设计系统功能。
⑴学生要能够查询自己所学课程的成绩,查看自己不同课程的成绩、平均成绩及排名,查看个人信息,修改个人登录密码等。
⑵教师要实现对自己教授课程中所有成绩的查询,以及对自己所教授专业的学生的个分数段成绩单人数成绩的查询排序功能,个人资料的修改及个人登录密码的修改等。
⑶管理员要能够实现对管理员、教师、学生基本信息的增加、删除、修改、查询以及实现对学生成绩的增加、删除(按学号、班级、课程号、院系)。
1.3、性能需求
1.3.1、 实现界面美观友好,信息查询灵活、方便、快捷、准确。
1.3.2、 数据保密性强,用户对应不同的操作级别。
1.4、系统数据流程分析
<学生成绩管理系统>包括八个模块:系统登录模块、学生基本信息管理、教师基本信息管理、管理员基本信息管理、学生成绩信息查询、学生成绩信息管理、学生成绩信息统计、系统退出。
1.4.1、系统登录模块
⑴ 用户在登陆界面中输入用户名和密码。
⑵ 通过用户名与数据库里的用户表相匹配,将学生、教师与管理员区分开,三者各自进入自己的页面,初始密码为:000000,登陆成功后,可以修改密码。
⑶ 三者拥有各自权限,分别拥有不同的功能。
1.4.2、学生基本信息管理
管理员对所有学生信息进行增删改查,学生只能查询自己的基本信息。
1.4.3、教师基本信息管理
管理员对所有教师信息进行增删改查,教师只能查询自己的基本信息。
1.4.4、管理员基本信息管理
管理员对所有管理员信息进行增删改查。
1.4.5、学生成绩信息查询
管理员查询功能:可以按学号、班级、院系、教师工号等对学生成绩分别进行查询、某门课程的排名、最高分、最低分、不及格人数、查某班级某科目分数段人数。
教师查询功能:查询课程的最高分、最低分、各分数段人数、不及格等。
学生成绩查询功能:查询某生所学课程成绩的排名、最高分、最低分、不及格人数等。
1.4.6、学生成绩信息管理
管理员对学生信息进行增删改除。
1.4.7、学生成绩信息统计
按学号、班级、院系、教师工号等分别进行统计,并对结果提供打印功能。
1.4.8、退出程序
退出该程序即可。
数据流程图
图1-1-4
2 数据库概念结构设计
在该数据库中拥有学生、教师、班级、部门、分数、课程、用户、管理员这八种实体。
学生拥有的属性:学号、姓名、性别、电话、系别;
教师拥有的属性:教师工号、姓名、性别、电话、系别;
班级拥有的属性:班级名、班级号、系别;
分数拥有的属性:成绩、平均成绩、学号、课程号、课程名;
课程拥有的属性:课程号、课程名、学分、学时、教师工号;
用户拥有的属性:用户号、用户名;
管理员拥有的属性:管理员号、管理员名。
2.1、局部ER图
2.2、学成成绩智能信息管理系统整体ER图
3 数据库逻辑结构设计
把E-R图中实体及实体联系转换为关系,写出关系模式,以下划线标注出关键字。可以分为实体的直接转换、1:1联系的转换、1:n联系的转换、m:n联系的转换几个方面描述。
4 数据库物理结构设计
4.1 SQLServer数据库及数据表的创建
4.1.1数据库创建
CREATE DATABASE RPP
ON PRIMARY
(
NAME=RPP_data,
FILENAME='E:\RPP_data.mdf',
SIZE=10MB,
MAXSIZE=50MB,
FILEGROWTH=1MB
)
LOG ON
(
NAME=RPP_log,
FILENAME='E:\RPP_log.ldf',
SIZE=2MB,
MAXSIZE=5MB,
FILEGROWTH=1%
4.1.2数据表的创建
⑴数据库的关系模式
Student(sno,sname ,sex,classno,departid,phone);
Teacher(tno,tname,sex,departed,sex,phone);
Course(cno,cname,credit,ctime,tno);
Score(sno,sname,cno,cname,grade,GPA);
Administror(adminino,admininame,sex);
Deparement(departid,departname);
Class(departed,classno,classname);
User(userno,password);
⑵表的物理设计
表一 学生信息表
表二 教师信息表
表三 课程信息表
表四 学成成绩表
表五管理员信息表
4.2数据完整性设计(二级标题)
4.2.1主键约束的创建(三级标题)
4.2.2 DEFAULT约束的创建(三级标题)
4.2.3外键约束的创建(三级标题)
4.2.4 UNIQUE约束的创建(三级标题)
4.2.5 CHECK约束的创建(三级标题)
每一项内容选择1-2个实例进行说明。有图形工具创建的,有SQL语句创建的。
4.3 索引的创建(二级标题)
对每个表选择合适的字段进行索引的创建,每个表一个索引即可。
4.4 视图的创建(二级标题)
创建2个视图,写出其SQL语句,显示创建成功的截图。
5 数据库的操作
5.1数据操纵(二级标题)
5.1.1表结构的修改(三级标题)
5.1.2数据插入(三级标题)
5.1.3数据更新(三级标题)
5.1.4数据删除(三级标题)
每一部分选择2个实例进行说明,写出所进行的操作及相应的SQL语句,操作成功结果的截图。
5.2 数据查询(二级标题)
5.2.1单表查询(三级标题)
5.2.2多表查询(三级标题)
每一部分选择3-5个实例进行说明,写出所要求的操作及相应的SQL语句、操作成功结果的截图
5.3 存储过程的创建(二级标题)
5.4 触发器的创建(二级标题)
6 总结
当花了两个周将这个课程设计通过自己的双手把它做出来时,还是有点小小的成就感的,不论自己的做出来的东西够不够优秀,但自己动手把它实践出来,我觉得就是进步和收获。真心的觉得如果学习很多的理论知识,而没有去付诸实践,那么自己永远不会有所提高。
该学习成绩智能管理系统是一个与我们在校大学生息息相关的软件系统,虽然我们经常使用它,但能把它完整的做出来绝对不是一件简单的事情,因为我们作为学生,对自己的权限很是了解,但是对成绩管理系统中的教师和教务处管理员的权限却不够清楚,所以只能通过上网搜索资料和询问老师去找到答案,以最终确定教师和管理员的权限及功能。
参考文献
列出3-5个参考文献