完整word版学生成绩管理系统数据库设计.docx

上传人:b****2 文档编号:1765367 上传时间:2022-10-23 格式:DOCX 页数:13 大小:242.31KB
下载 相关 举报
完整word版学生成绩管理系统数据库设计.docx_第1页
第1页 / 共13页
完整word版学生成绩管理系统数据库设计.docx_第2页
第2页 / 共13页
完整word版学生成绩管理系统数据库设计.docx_第3页
第3页 / 共13页
完整word版学生成绩管理系统数据库设计.docx_第4页
第4页 / 共13页
完整word版学生成绩管理系统数据库设计.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

完整word版学生成绩管理系统数据库设计.docx

《完整word版学生成绩管理系统数据库设计.docx》由会员分享,可在线阅读,更多相关《完整word版学生成绩管理系统数据库设计.docx(13页珍藏版)》请在冰豆网上搜索。

完整word版学生成绩管理系统数据库设计.docx

完整完整word版学生成绩管理系统数据库设计版学生成绩管理系统数据库设计JIANGXIAGRICULTURALUNIVERSITY数据库课程设计报告题目:

学生成绩管理系统数据库设计学院:

姓名:

学号:

专业:

班级:

指导教师:

二0一二年6月一、需求分析一、需求分析1.1需求概述需求概述针对江西农大的成绩管理工作量大、繁杂,人工处理非常困难。

学生成绩管理系统借助于计算机强大的处理能力,大大减轻了管理人员的工作量,并提高了处理的准确性。

学生成绩管理系统的开发运用,实现了学生成绩管理的自动化,不仅把广大教师从繁重的成绩管理工作中解脱出来、把学校从传统的成绩管理模式中解放出来,而且对学生成绩的判断和整理更合理、更公正,同时也给教师提供了一个准确、清晰、轻松的成绩管理环境。

1.2功能简介功能简介能够进行数据库的数据定义、数据操纵、数据控制等处理功能,进行联机处理的相应时间要短。

具体功能应包括:

系统应该提供课程安排数据的插入、删除、更新、查询;成绩的添加、修改、删除、查询,学生及教职工基本信息查询的功能。

二、数据库设计二、数据库设计2.1确定联系集及确定联系集及E-R图图根据前面对系统进行的分析,已经初步了解了学生成绩管理系统的数据处理流程,找出与系统有关的各个实体及其相互联系如下:

、标示实体集:

班级,课程,学生,成绩四个关系。

、标示联系集:

学生和班级:

一个班由多个学生组成,一个学生只能归属于某个班;存在“归属”的关系:

N:

1学生和课程:

一个学生可以选修多门课程,一门课程提供给多个学生选修;存在“选修”的关系:

N:

M关系Score的主码是studentNo,courseNo,term显然同一个学生在同一个学期不允许修读同一门课程多次关系Course的priorCourse属性参照本关系的主码courseNo属性。

这里假设一门课程最多只需要定义一门先修课程。

、标示属性集:

班级(班级编号,班级名称,所属学院,年级,班级人数)课程(课程号,课程名,学分,课时数,先修课程)学生(学号,姓名,性别,出生日期,籍贯,所属班级)成绩(学号,课程号,开课学期,成绩)2.2画出画出E-R图图班级信息图如下:

图2-2-1班级实体集的E-R图学生信息图如下:

图2-2-2学生实体集E-R图课程信息图如下:

图2-2-3课程实体集E-R图成绩信息图如下:

图2-2-4成绩实体集E-R2.3学生成绩管理系统总学生成绩管理系统总E-R图图根据上面对实体联系的分析,可以画出E-R图如下:

图2-2-5学生成绩管理系统总E-R图三、逻辑数据库设计阶段三、逻辑数据库设计阶段逻辑结构是独立于任何一种数据模型的信息结构。

逻辑结构的任务是把概念结构设计阶段设计好的基本E-R图转化为宜选用的DBMS所支持的数据模型相符合的逻辑结构,并对其进行优化。

E-R图向关系模型转化要解决的问题是如何将实体型和实体间的联系转化为关系模式,如何确定这些关系模式的属性和码。

设计学生成绩管理数据库,包括课程、学生、教师、成绩四个关系,其关系模式中对每个实体定义的属性如下:

课程信息表Class:

(班级编号,班级名称,所属学院,年级,班级人数)学生信息表Student:

(学号,姓名,性别,出生日期,籍贯,所属班级)课程信息表Course:

(课程号,课程名,学分,课时数,先修课程)成绩表Score:

(学号,课程号,开课学期,成绩)设计出E-R图后,可将E-R图转换为数据库模式。

本系统建立的数据库为“ScoreDB”,运行本系统时在库中所建立的表分别介绍如下:

3.1班级信息表班级信息表(Class)字段名描述数据类型字段限制classNo班级编号char(10)PrimarykeyclassName班级名称varchar(30)Notnullinstitute所属学院varchar(30)Notnullgrade年级smallintNotnullclassNum班级人数tinyintNotnull3.2学生信息表学生信息表(Student)字段名描述数据类型字段权限studentNo学号char(10)PrimarykeystudentName姓名Varchar(30)Notnullsex性别char

(2)Notnullbirthday出生日期datetimeNotnullnative民族varchar(30)NotnullclassNo所属班级varchar(30)Notnull3.3课程信息表(课程信息表(Course)字段名属性数据类型字段权限courseNo课程号char(10)PrimarykeycourseName课程名varchar(30)NotnullcreditHour学分numericNotnullcourseHour课时数tinyintNotnullpriorCourse先修课程varchar(30)Notnull3.4成绩表(成绩表(Score)字段名属性数据类型字段权限studentNo学号char(10)PrimarykeycourseNo课程号char(10)Primarykeyterm开课学期char(10)Notnullscore成绩numericNotnull四、建表四、建表4.1创建数据库创建数据库打开SQL工具“查询分析器”在查询窗口中键入下列SQL语句createdatabaseScoreDB执行上述SQL语句即可新建一名为ScoreDB的数据库。

4.2创建数据表创建数据表一个完整的数据库不可缺少的就是数据表,若干个数据表的集合成一个数据库。

数据表主要用来存放一定格式的记录,数据表中的行被称为记录,列被称为字段。

创建数据表的过程其实就是定义字段的过程。

在此学生成绩管理系统中需要创建四个表,即班级信息表、学生信息表、课程信息表和成绩表。

创建数据库后,为ScoreDB数据库添加数据表,步骤如下。

新建查询窗口在查询窗口中键入下列SQL语句createtableClass(/创建班级信息表classtudentNochar(10)primarykey,/班级编号classtudentNamevarchar(30)notnull,/班级名称institutevarchar(30)Notnull/所属学院gradesmallint,Notnull/年级classNumtinyint,Notnull/班级人数)执行上述SQL语句即可创建课程信息表相关表格createtableStudent(/创建学生信息表studentNochar(10)primarykey,/学号studentNamevarchar(30)notnull,/姓名sexchar

(2)notnull,/性别birthdaydatetimenotnull,/出生日期nativevarchar(30)notnull,/民族classtudentNoChar(10)notnull,/所属班级)执行上述SQL语句即可创建学生信息表相关表格createtableCourse(/创建教师信息表courseNochar(10)primarykey,/课程号courseNamevarchar(30)notnull,/课程名creditHournumericnotnull,/学分courseHourtinyintnotnull,/课时数priorCoursevarchar(30)notnull,/先修课程)执行上述SQL语句即可创建教师信息表相关表格createtableScore(/创建成绩表studentNochar(10)primarykey,/学号courseNochar(10)primarykey,/课程号termchar(10)notnull,/开课学期scorenumericnotnull,/成绩)执行上述SQL语句即可创建成绩表相关表格五、数据库的运行和维护五、数据库的运行和维护5.1定义定义基本表的创建、修改及删除;索引的创建和删除。

5.1.1基本表的创建,建表语句基本表的创建,建表语句createtableStudent(/创建学生表studentNochar(10)notnull,studentNamevarchar(30)notnull,sexchar

(2)notnull,birthdaydatetimenotnull,nativevarchar(20)notnull,classtudentNoChar(10)notnull,constraintstudentPKprimarykey(StudentNO),constraintstudentPK1foreignkey(classtudentNo)referencesclass(classtudentNo)5.1.2基本表的删除基本表的删除droptableStudent5.2数据操作数据操作5.2.1单表查询:

单表查询:

查询学号为“0800006”生的姓名selectstudentNamefromStudentwherestudentNo=0800006结果:

5.2.2连接查询连接查询查询学生的学号、姓名,所选课程的课程号、课程名和成绩SelectStudent.studentNo,Student.studentName,Class.classNo,Class.className,Score.scorefromStudent,Class,Score,CourseWhereStudent.studentNo=Score.studentNoandStudent.classNo=Class.classNoandCourse.courseNo=Score.courseNo结果:

5.2.3操作结果集查询操作结果集查询查询0700003号同学和0800002号同学共同选修的课程SelectcourseNoFromScoreWherestudentNo=0700003IntersectSelectcourseNoFromscoreWherestudentNo=0800002查询结果:

5.2.4嵌套查询嵌套查询查询选修了“CS0701”这门课的所有学生的学号、姓名、出生日期以及籍贯。

SelectstudentNo,studentName,birthday,nativeFromStudentWherestudentNoin(selectstudentNoFromscoreWhereclassNo=CS0701)查询结果:

5.3数据库更新操作数据库更新操作5.3.1插入数据插入数据向Student表中添加一项记录:

姓名:

叶问,学号:

0800016,性别:

男,出生年月:

1992-6-19,籍贯:

南昌,班级编号:

CP0802InsertIntoStudent(studentNo,studentName,sex,birthday,native,classNo)Values(0800016,叶问,男,1992-6-19,南昌,CP0802结果:

5.3.2修改数据修改数据修改吴敏的学号为0800019UpdateStudentSetStudentNo=0800019WhereStudentName=吴敏;5.3.3

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 求职职场 > 简历

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

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