成绩管理系统数据库设计(共33页).doc

上传人:飞****2 文档编号:13491693 上传时间:2022-04-29 格式:DOC 页数:33 大小:794.50KB
返回 下载 相关 举报
成绩管理系统数据库设计(共33页).doc_第1页
第1页 / 共33页
成绩管理系统数据库设计(共33页).doc_第2页
第2页 / 共33页
点击查看更多>>
资源描述

《成绩管理系统数据库设计(共33页).doc》由会员分享,可在线阅读,更多相关《成绩管理系统数据库设计(共33页).doc(33页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、精选优质文档-倾情为你奉上2013-2014学年第2学期经济管理学院实践教学成 绩 评 定 表实践教学项目数据库系统原理与设计专业学生姓名班级学号评语成绩日期2014年6月4日专心-专注-专业课程实践任务书学院经济管理学院专业姓名学号课程名称数据库系统原理与设计设计题目成绩管理系统数据库设计设计要求与任务:通过设计一完整的数据库,使学生掌握数据库设计各阶段的输入、输出、设计环境、目标和方法。熟练掌握两个主要环节概念结构设计与逻辑结构设计;熟练的使用SQL语言实现数据库的建立、应用和维护。具体要求如下:1每人一题,题目可自拟。2要求学生根据题目的需求描述,进行实际调研,提出完整的需求分析报告。3

2、独立按时完成规定的工作任务,不得弄虚作假,不准抄袭他人内容。工作计划与进度安排:第1-2天:需求分析,对系统的功能需求和数据需求进行分析第3-4天:概念结构设计画出系统E-R图第5天:逻辑结构设计第6-7天:数据库的实施与运行第8-10天:编写报告,准备答辩。指导教师(签字): 2014年5月6 日专业负责人(签字): 2014年5月6日学院院长(签字): 2014年 5月 6日摘 要随着计算机技术和数据库技术的高速发展,已经在社会经济、政治、军事、文化、卫生和教育等领域得到了广泛的应用,并且随着信息化水平的提高,越来越多的领域正在享受计算机技术和数据库技术带来的高效率、高经济效益等优势。人们

3、的学习、工作和生活各个方面的质量得到了极大的改善和提高。以现代计算机技术和数据库管理技术为实现基础的数字化教学管理正在蓬勃发展,因此,加强学校信息化资源的管理和利用,提高学校管理信息化水平,是目前学校学生成绩管理的一个大趋势,也是学校信息管理的发展要求。高校成绩管理系统是数字化校园的一个重要组成部分,可以提高学校信息化管理水平,是学校的管理更加的科学、系统和高效。本次课程设计主要涉及到对成绩管理系统进行需求分析,概念结构设计,逻辑结构设计和数据库的实施等几部分工作。 关键字:数据库技术;成绩管理系统;概念结构设计;逻辑结构设计目 录 1前 言1.1课题简介 随着教育制度的改革,高校不断地扩招,

4、学生数量与新兴专业种类也在不断的增加,因此学生成绩管理的工作就变的比以往更复杂。学生成绩的特殊性要求学生成绩信息及时准确的更新,开发一个成绩管理系统可以及时更新学生成绩信息,以满足学生能够及时查询到自己相关成绩信息。为了适应当代社会人们高度强烈的时间观念,学生成绩管理系统为教学办公带来了极大的方便。 学生成绩管理系统就是为了更好的管理学生成绩而开发的数据管理软件。它对于一个学校是不可缺少的重要组成部分,它的内容对于学校的决策者和管理者来说都是至关重要的。目前各个高校的基本情况是:每次考试结束,老师们都需要统计打了的学生成绩,这些数据的归档、统计工作任务中,统计结果后往往错误百出。工作量直达,查

5、询、维护都有不同程度的问题存在。所以,学生成绩管理系统为用户提供充分的信息和快捷的查询手段,实现学生基本信息,成绩的录入、删除、查询维护以及成绩统计分析等几个方面的功能,是现实问题的迫切要求。1.2设计目的 对成绩管理系统进行数据库的设计,目的是为了对学生成绩进行系统的管理,能够方便学校管理人员对学生成绩进行录入、统计、添加、修改、删除,以及方便用户对信息或成绩进行查询和打印;除此之外,还可以更便捷地围绕成绩管理对与成绩相关的其他信息,例如:学院信息、专业信息、班级信息、学生信息、教师信息、课程信息等相关信息的管理,从而提高学校的办公效率与准确率,实现一个信息化、现代化的成绩管理系统。2需求分

6、析2.1业务需求及处理流程 开始 输入用户名 输入密码 教务处 原始密码 信息维护 忘记密码? 进入系统 密码修改 设置新密码 退出系统 修改成功NY成绩管理系统的主要业务包括:管理员进行成绩、学生信息、教师信息、课程信息等的录入、修改、删除业务,学生进行成绩的查询、个人信息的查询、密码修改的业务等。本次给出的主要是“查询”和“修改密码”的业务流程。如图2-1示和图2-2示: 退出系统 开始 用户登录 信息查询输入查询条件按学期查询按课程查询按学年查询生成相应成绩单个人成绩查询?YN 图2-1 成绩查询业务流程图 图2-2 修改密码业务流程图 2.2功能需求分析功能需求分析是描述系统应提供的功

7、能和服务。成绩管理系统主要的功能和数据需求分析如图2.3示:成绩管理系统 用户及权限管理基本数据管理学生成绩管理信息查询系统管理基本信息查询成绩查询院系信息管理专业信息管理班级信息管理学生信息管理教师信息管理课程信息管理管理员用户学生用户图2.3 成绩管理系统功能模块图2.2.1用户及权限管理 用户输入自己有效的用户名和密码登入系统。为了保护本校师生的信息,每位有效的用户都具有自己的用户名、密码、用户标识等标的物。 管理员用户:系统的管理员能够具有实现整个大学的学生信息和成绩有关的录入、修改、删除、查询等操作特权,并可以对大学的教师信息进行添加、删除、修改等操作。 学生用户:学生用户的权限应该

8、不仅仅控制在对成绩或个人信息的进行查询,而且可以对的自己的登录密码进行修改。2.2.2基本数据管理 院系信息管理。需要管理学院号、学院名、学院地址、学院内的教师人数等信息。 专业信息管理。需要管理专业代码、专业名称、所属学院、班级数量等信息。 班级信息管理。需要管理班级号、班级名称、所属专业、年级、班级人数等信息。 学生信息管理。需要管理学生的学号、学生的姓名、性别、出生日期、联系电话、民族、家庭住址等信息 教师信息管理。需要管理教师编号、教师姓名、职称、所授课程等信息。 课程信息管理。需要管理课程号、课程名称、课时、学分等信息。2.2.3学生成绩管理 提供学生考试成绩的基本录入、修改、查询、

9、打印等基本管理功能,以及学生单科和总成绩的相关统计功能。2.2.4信息查询 基本信息查询。学生不仅可以查询自己的个人基本信息,也可以查询自己选修的课程信息,学分信息等。教师用户也可以进行相关的个人信息的查询以及所授课程的安排等。学生成绩查询。包括快捷查询和组合查询,前者可以直接查询学年成绩,对本学生在学校的所以成绩进行查询;而后者组合查询,可以查询某一学年某一学期的成绩情况,也可以查询到某门课的学生选修情况,总之可以根据不同需要查询不同学生样式的成绩单。 2.2.5系统管理 对用户管理和系统进行初始化设置;对数据进行备份,防止数据的丢失而造成不必要的损失;当用户进入系统遇到问题时可以启动系统帮

10、助,以解决自己的问题。2.3 业务规则分析 业务规则分析主要是分析数据之间的约束以及数据库约束。基于上述功能需求,通过进一步了解,成绩管理系统业务规则如下:(1) 每个用户都有自己唯一的用户名和密码,只有用户名和密码都对的时候才能登录成功,只有登录成功之后才可以进行信息的查询和密码的修改。(2) 每个学生由学号唯一标识,学号由所在学院所在专业所在班级的编号顺序生成。(3) 每个教师由教师编号唯一标识,教师编号由所在学院所在教研室以及所在教研室的编号顺序生成。(4) 每门课程由课程号唯一标识,课程号由所属学院所属专业方向的编号顺序生成。(5) 一个学院可以设置很多专业,一个专业只能存在于一个学院

11、。(6) 一个专业可以包含很多班级,一个班级只能包含于专业。(7) 一个班级可以有很多学生,一个学生只能为一个班级所有。(8) 一个学院可以聘用很多教师,一个教师只能被一个学院所聘用。(9) 一个教师可以给很多学生授课,一个学生也可以听很多教师讲课。(10) 一个学院可以包含很多的课程,一个课程只能归属于一个学院。(11) 一个学生可以选修很多课程,一个课程也可以被很多学生选修。(12) 一份成绩单上可以有所有课的成绩也可以只有某一学期或学年的成绩,根据自己查询信息的不同,体现不同的内容。(13) 管理员会根据考试情况更新学生的成绩,学生可以根据情况查询自己的成绩。(14) 管理员会每年对学生

12、的基本信息进行修改,大四毕业了需要对档案进行处理,大一需要添加新的档案,大二、大三需要对档案上的信息进行更新。(15) 一个学生可以给自己的所有课老师进行评价,一课教师可以对自己的所有学生进行评价。完成需求分析后,接下来的任务就是根据上述结果设计数据库的概念模型,即E-R模型,包括确定实体集、联系集及属性。3概念结构设计3.1 局部E-R图3.1.1 确定实体集及属性(1) 学院实体集。其属性有:学院号、学院名、学院地址、教师人数等。如图3-1示: 学院 学院号学院地址 学院名教师人数图3-1 学院实体集(2) 专业实体集。其属性有:专业代码、专业名称、所属学院、班级数量等。如图3-2示: 专

13、业专业代码所属学院班级数量专业名称图3-2 专业实体集(3)班级实体集、其属性有:班级代码、班级名称、所属学院、年级、班级人数等。班级人数为派生属性,由班级代码所产生的。如图3-3示: 班级班级代码班级名称所属专业班级人数 年级图3-3 班级实体集 学生 学号 民族学生姓名联系电话出生日期 性别家庭地址 省份 城市具体地方学生实体集。其属性有:学号、学生姓名、性别、出生日期、联系电话、民族、家庭住址等。其中家庭住址为复合属性,它由省份、城市、具体地方组成。电话号码为多值属性。如图3-4示:图3-4 学生实体集(5)课程实体集。其属性有:课程号、课程名称、课时、学分等。如图3-5示: 课程课程号

14、课程名称 课时 学分图3-5 课程实体集 教师教师编号教师名称 职称所授课程教师实体集。其属性有:教师编号、教师姓名、职称、所授课程等。如图3-6示:图3-6 教师实体集3.1.2 确定联系集及属性 学院聘用 教师聘用日期聘用联系集。实体集学院与教师之间的一对多联系集,表明一个学院可以聘用多个教师,但一个教师只能被一个学院所聘用,联系属性为聘用日期。如图3-7示: 1 m图3-7 聘用联系集设置联系集。实体集学院与专业之间的一对多联系集,表明一个学院可以设置很多专业,但一个专业只能属于一个学院。如图3-8示: 学院设置 专业 1 m图3-8 设置联系集包含联系集。专业实体集与班级的一对多联系集

15、,表明一个专业可以包含很多班级,但一个班级只能属于以个专业。如图3-9示: 专业 班级包含 1 m图3-9 包含联系集所有联系集。班级实体集与学生的一对多联系集,表明一个专业可以有很多学生,但一个学生只能为一个班级所有。如图3-10示: 班级 学生所有 1 m图3-10 所有联系集授课联系集。教师实体集与学生的多对多联系集,表明一个教师可以给多个学生授课,一个学生也可以听多个教师讲课。如图3-11示: 教师 学生授课 m n 图3-11 授课联系集归属联系集。学院实体集与课程的一对多联系集,表明一个学院可以有很多门的课程,但一门课程只能归属为一个学院。如图3-12示: 学院 课程归属 1 m图

16、3-12 归属联系集选修联系集。学生实体集与课程的多对多联系集,表明一个学生可以选修很多门课程,一门课程也可以被很多学生选修,联系属性为成绩。如图3-13示: 学生 课程选修 成绩 m n图3-13 选修联系集3.2 全局E-R图包含上述涉及的全部实体集、联系集及其描述属性,如图3-14示 学院设置 专业包含 班级选修 课程归属 教师授课聘用所有 学生聘用日期 成绩 1 1 1 m m n m 1 m m n 1 m m 图3-14 全局E-R图4逻辑结构设计4.1 E-R图向关系模型的转换根据E-R模型转换为关系模型的原则,可将其转换为如下关系模型:(注:有下划线的属性为主码,有波浪线的属性

17、为外码)4.1.1 由实体集转化而来的关系模型1.学院实体集:学院(学院号,学院名,学院地址,教师人数)2. 专业实体集专业(专业代码,专业名称,所属学院,班级数量,学院号)3. 班级实体集班级(班级代码,班级名称,所属专业,年级,班级人数,专业代码)4. 学生实体集学生(学号,姓名,性别,出生日期,联系电话,民族,家庭住址,班级代码)5. 教师实体集教师(教师编号,教师姓名,职称,所授课程,学院号,聘用日期)6. 课程实体集课程(课程号,课程名称,课时,学分,学院号)4.1.2 由联系集转化而来的关系模型1.授课联系集授课(教师编号,学号)2.选修联系集选修(学号,课程号,成绩)4.2 数据

18、模型的优化根据第一范式的定义可知:如果关系模型r(R)的每一个属性对应的域值都是不可分的,则称r(R)属于第一范式。而学生关系模型中的家庭地址是一个复合属性,还可以再进一步分为省份、城市、具体地方,所以学生关系模型不符合第一范式的要求。可改为如下内容:学生(学号,姓名,性别,出生日期,联系电话,民族,省份,城市,具体地方,班级代码)5数据库的实施5.1数据库和基表的创建5.1.1建立成绩管理系统数据库创建数据库的语句:CREATE DATABASE 成绩管理系统ON (NAME=成绩管理系统,FILENAME=E:program files成绩管理系统.mdf,SIZE=3mbMAXSIZE=

19、10mb,FILEGROWTH=5mb)LOG ON(NAME=成绩管理系统_log,FILENAME=E:program files成绩管理系统.ldf,SIZE=1mbMAXSIZE=5mb,FILEGROWTH=1mb)建立数据库的结果如图5.1示:图5.1 建立成绩数据库系统5.1.2建立各种基本表1. 建立学院信息表SQL语句:CREATE TABLE 学院信息表(学院号 char(10) NOT NULL, 学院号学院名 varchar(20) NOT NULL, 学院名学院地址 varchar(40) NULL, 学院地址教师人数 smallint NULL, 教师人数PRIMA

20、RY KEY(学院号))建立学院信息表结果如图5.2,图5.3示:图5.2 创建学院信息表 图5.3 输入学院信息表名2. 建立专业信息表SQL语句:CREATE TABLE 专业信息表(专业代码 char(10) NOT NULL, 专业代码专业名称 varchar(20) NOT NULL, 专业名称所属学院 varchar(20) NULL, 所属学院班级数量 smallint NULL, 班级数量学院号 char(10) NOT NULL, 学院号PRIMARY KEY(专业代码),FOREIGN KEY(学院号))建立专业信息表如图5.4,5.5示:图5.4 创建专业信息表 图5.5

21、输入专业信息表名3. 建立班级信息表SQL语句:CREATE TABLE 班级信息表(班级代码 char(10) NOT NULL, 班级代码班级名称 varchar(20) NOT NULL, 班级名称所属专业 varchar(20) NULL, 所属专业年级 int NULL, 年级班级人数 smallint NULL, 班级人数专业代码 char(10) NOT NULL, 专业代码PRIMARY KEY(班级代码),FOREIGN KEY(专业代码))建立班级信息表如图5.6,5.7示:图5.6 创建班级信息表 图5.7 输入班级信息表名4. 建立学生信息表SQL语句:CREATE T

22、ABLE 学生信息表(学号 char(10) NOT NULL, 学号姓名 varchar(20) NOT NULL, 姓名性别 char(2) NULL, 性别出生日期 datetime NOT NULL, 年级联系电话 varchar(13) NULL, 联系电话民族 varchar(20) NOT NULL, 民族省份 varchar(20) NULL, 省份城市 varchar(20) NULL, 城市具体地方 varchar(20) NULL, 具体地方班级代码 char(10) NOT NULL, 班级代码PRIMARY KEY(学号),FOREIGN KEY(班级代码))建立班级

23、信息表如图5.8,5.9示:图5.8 创建学生信息表 图5.9 输入学生信息表名5. 建立教师信息表SQL语句:CREATE TABLE 教师信息表(教师编号 char(10) NOT NULL, 教师编号教师姓名 varchar(20) NOT NULL, 教师姓名职称 varchar(20) NULL, 职称所授课程 varchar(20) NULL, 所授课程学院号 char(10) NOT NULL, 学院号聘用日期 datetime NULL, 聘用日期PRIMARY KEY(教师编号),FOREIGN KEY(学院号))建立教师信息表如图5.10,5.11示:图5.10 创建教师信

24、息表 图5.11 输入教师信息表名6. 建立课程信息表SQL语句:CREATE TABLE 课程信息表(课程号 char(10) NOT NULL, 课程号课程名称 varchar(20) NOT NULL, 课程名称课时 smallint NULL, 课时学分 smallint NULL, 学分学院号 char(10) NOT NULL, 学院号PRIMARY KEY(课程号),FOREIGN KEY(学院号))建立教师信息表如图5.12,5.13示:图5.12 创建课程信息表 图5.13 输入课程信息表名7. 建立授课信息表SQL语句:CREATE TABLE 授课信息表(教师编号 cha

25、r(10) NOT NULL, 教师编号学号 char(10) NOT NULL, 学号PRIMARY KEY(教师编号,学号))建立授课信息表如图5.14,5.15示:图5.14 创建授课信息表图5.15 输入授课信息表名8. 建立选修信息表SQL语句:CREATE TABLE 选修信息表(学号 char(10) NOT NULL, 学号课程号 char(10) NOT NULL, 课程号成绩 smillint NULL, 成绩PRIMARY KEY(学号,课程号))建立教师信息表如图5.16,5.17示: 图5.16 创建选修信息表 图5.17 输入选修信息表名5.2数据的载入1、载入学院

26、基本信息,如图5.18示:图5.18 载入学院基本信息2、载入专业基本信息,如图5.19示:图5.19 载入专业基本信息3、载入班级基本信息,如图5.20示:图5.20 载入班级基本信息4、载入学生基本信息,如图5.21示:图5.21 载入学生基本信息5、载入教师基本信息,如图5.22示:图5.22 载入教师基本信息6、载入课程基本信息,如图5.23示:图5.23 载入课程基本信息7、载入授课基本信息,如图5.24示:图5.24 载入授课基本信息8、载入选修基本信息,如图5.25示:图5.25 载入选课基本信息5.3数据的查询1、在学生信息表中查询“女”学生的学号、姓名、联系电话、民族、出生日

27、期、班级代码,并按班级代码的升序、出生日期的月份降序输出。查询语句:SELECT 学号,姓名,联系电话,民族,出生日期,班级代码FROM 学生信息表WHERE 性别=女ORDER BY 班级代码,出生日期 DESC查询结果如图5.26示:图5.26 对学生信息表进行查询同时进行排序2、在学生信息表中查询与赵宵同学在同一个班的同学姓名、性别、出生日期、班级代码。查询语句:SELECT a.姓名,a.性别,a.出生日期,a.班级代码 FROM 学生信息表a, 学生信息表bWHERE b.姓名=赵宵AND a.班级代码=b.班级代码查询结果如图5.27示:图5.27 对学生信息表进行自表连接3、查询

28、选修了课程名称为“线性代数”的同学的学号和学生姓名。查询语句:SELECT a.学号,姓名 FROM 学生信息表 a,课程信息表 b,选修信息表 cWHERE b.课程号=c.课程号 AND c.学号=a.学号AND b.课程名称=线性代数查询结果如图5.28示:图5.28 等值连接进行查询4、查询平均分在80分以上的每个同学的学号、选课门数、平均分和最高分。查询语句:SELECT 学号,count(*)门数,avg(成绩)平均分,max(成绩)最高分FROM 选修信息表GROUP BY 学号HAVING avg(成绩)=80查询结果如图5.29示:图5.29 分组聚合查询5、在学生信息表中查

29、询联系电话中带34的同学的学号、姓名、性别、省份、城市、具体地方。查询语句:SELECT 学号,姓名,性别,省份,城市,具体地方FROM 学生信息表WHERE 联系电话 LIKE %34%查询结果如图5.30示:图5.30 字符匹配查询6、查询年龄大于选修大学英语课的学生的姓名和年龄。查询语句:SELECT 姓名,year(getdate()-year(出生日期) AS ageFROM 学生信息表WHERE year(getdate()-year(出生日期) ANY (SELECT year(getdate()-year(出生日期) FROM 学生信息表 a,课程信息表 b,选修信息表 c W

30、HERE 课程名称=大学英语 AND a.学号=c.学号 AND b.课程号=c.课程号)查询结果如图5.31示:图5.31 嵌套查询结束语通过这几周数据库系统课程设计的锻炼,让我学习到一个系统设计员所需要具备的最基本的技能以及思维方式,同时也进一步理解数据库设计的整个过程,包括需求分析、概念结构设计、逻辑结构设计、系统实施等基本内容。在此次设计过程中,不仅将老师教的理论知识与自己的实际操作相结合,提高了自己的动手能力,还掌握了SQL Sever 2000的使用和练习了SQL语言的编写。虽然学的了很多的知识,但这也从侧面在告诉自己还有很多的不足,比如说一些软件的利用还不是太熟练,自己的理论知识

31、也还有很多欠缺的部分,让我意识到还有很多知识需要我去学习,同时也成为我在今后努力学习的动力。参考文献1 萨师煊、王珊. 数据库系统概论. 4版.北京:高等教育出版社, 20062 罗运模. 完全掌握SQL Server 2000. 人民邮电出版社,20013 万常选等. 数据库系统原理与设计. 清华大学出版社,20094 王晟、万科编著. Delphi数据库开发经典案例分析M.清华大学出版 社,20055 Rob P,Coronel C.数据库系统-设计、实现与管理.5版.陈立军等译.北 京:电子工业出版社,20046 黄维通,刘艳民.SQL Server数据库应用基础教程.北京:高等教育出 版社,2007

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁