版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、JIANGXI AGRICULTURAL UNIVERSITY数据库课程设计报告题目:学生成绩管理系统数据库设计学院:姓名: 学号:专业:班级:指导教师:二0 二年6月目录一、需求分析3学生成绩管理系统设计1.1需求概述31.2功能简介3二、数据库设计32.1确定联系集及ER图32.2画出ER图42.3学生成绩管理系统总ER图5三、逻辑数据库设计阶段63.1班级信息表(Class)73.2学生信息表(Student"3.3课程信息表(Course) 83.4 成绩表(Score) 8四、建表84.1创建数据库84.2创建数据表9五、数据库的运行和维护105.1定义105.1.1基本表
2、的创建,建表语句105.1.2基本表的删除115.2数据操作115.2.1单表查询:115.2.2连接查询115.2.3操作结果集查询125.2.4嵌套査询125.3数据库更新操作135.3.1插入数据135.3.2修改数据135.3.3删除数据135.4为数据库建立索引145.4.1索引的建立145.4.2索引的删除145.5数据库的安全性145.6数据库的完整性155.6.1实体完整性定义155.6.2参照完整性定义15六、模式求精15七、总结1612一、需求分析1.1需求概述针对XX农大的成绩管理工作量大、繁朵,人工处理非常困难。学主成绩管理 系统借助于计算机强大的处理能力,大大减轻了管
3、理人员的工作量,并提高了处 理的准确性。学生成绩管理系统的开发运用,实现了学生成绩管理的自动化,不仅 把广大教师从繁重的成绩管理工作中解脱出来、把学校从传统的成绩管理模式中 解放出来,而且对学生成绩的判断和整理更合理、更公正,同时也给教师提供了一 个准确、清晰、轻松的成绩管理环境。1.2功能简介能够进行数据库的数据定义、数据操纵、数据控制等处理功能,进行联机处理 的相应时间要短。具体功能应包括:系统应该提供课程安排数据的插入、删除、更新、查询; 成绩的添加、修改、删除、查询,学生及教职工基本信息查询的功能。二、数据库设计2.1确定联系集及ER图根据前面对系统进行的分析,已经初步了解了学生成绩管
4、理系统的数据处理 流程,找出与系统有关的各个实体及其相互联系如下: 、标示实体集:班级,课程,学生,成绩四个关系。 、标不联系集:学生和班级:一个班由多个学生组成,一个学生只能归属于某个班;存在“归属”的关系:N: 1学生和课程:一个学生可以选修多门课程,一门课程提供给多个学生选修; 存在“选修”的关系:N:M关系Score的主码是studentNo, courseNo, term显然同一个学生在同一 个学期不允许修读同一门课程多次关系Course的priorCourse属性参照本关系的主码courseNo属性。这里假 设一门课程最多只需要定义一门先修课程。 、标示属性集:班级(班级编号,班级
5、名称,所属学院,年级,班级人数)课程(课程号,课程名,学分,课时数,先修课程)学生(学号,性别,出生日期,籍贯,所属班级)成绩(学号,课程号,开课学期,成绩)2.2画出ER图班级信息图如下:图2-2-1班级实体集的E-R图学生信息图如下:图2-2-2学生实体集E-R图课程信息图如下:图2-2-3课程实体集E-R图成绩信息图如下:图2-2-4成绩实体集E-R2.3学生成绩管理系统总E-R图根据上面对实体联系的分析,可以画出ER图如下:图2-2-5学生成绩管理系统总E-R图三、逻辑数据库设计阶段逻辑结构是独立于任何一种数据模型的信息结构。逻辑结构的任务是把概念 结构设计阶段设计好的基本ER图转化为
6、宜选用的DBMS所支持的数据模型相符 合的逻辑结构,并对其进行优化。ER图向关系模型转化要解决的问题是如何将实体型和实体间的联系转化为 关系模式,如何确定这些关系模式的属性和码。设计学生成绩管理数据库,包括课程、学生、教师、成绩四个关系,其关系 模式中对每个实体定义的属性如下:课程信息表Class:(班级编号,班级名称,所属学院,年级,班级人数)学生信息表Student:(学号,性别,出生日期,籍贯,所属班级)课程信息表Course:(课程号,课程名,学分,课时数,先修课程)成绩表Score:(学号,课程号,开课学期,成绩)设计出ER图后,可将E-R图转换为数据库模式。本系统建立的数据库为“S
7、coreDB”,运行本系统时在库中所建立的表分别介绍如下:3.1班级信息表(Class)字段名描述数据类型字段限制classNo班级编号char(10)Prim ary keyclassName班级名称varchar(30)Not nullin stitute所属学院varchar(30)Not nullgrade年级smalli ntNot nullclassNum班级人数tinyintNot null3.2学生信息表(Student)字段名描述数据类型字段权限stude ntNo学号char(10)Primarykeystude ntNameVarchar(30)Not nullsex性别
8、char(2)Not nullbirthday出生日期datetimeNot nulln ative民族varchar(30)Not nullclassNo所属班级varchar(30)Not null3.3课程信息表(Course)字段名属性数据类型字段权限courseNo课程号char(10)Primary keycourseName课程名varchar(30)Not nullcreditHour学分nu mericNot nullcourseHour课时数tinyintNot nullpriorCourse先修课程varchar(30)Not null3.4 成绩表(Score)字段名属
9、性数据类型字段权限stude ntNo学号char(10)PrimarykeycourseNo课程号char(10)Prim ary keyterm开课学期char(10)Not nullscore成绩nu mericNot null四、建表4.1创建数据库打开SQL.E具“查询分析器”在查询窗口中键入下列SQL语句create database ScoreDB执行上述SQL语句即可新建一名为ScoreDB的数据库。4.2创建数据表一个完整的数据库不可缺少的就是数据表,若干个数据表的集合成一个数 据库。数据表主要用来存放一定格式的记录,数据表中的行被称为记录,列被称 为字段。创建数据表的过程其
10、实就是定义字段的过程。在此学生成绩管理系统中需要创建四个表,即班级信息表、学生信息表、课 程信息表和成绩表。创建数据库后,为ScoreDB数据库添加数据表,步骤如下。新建查询窗口在查询窗口中键入下列SQL语句createtable Class(/创建班级信息农classtudentNo char(10)primarykey,/班级编号classtudentName varchar(30)notnull,/班级名称institute varchar(30)Notnull/所属学院grade smallint,NotnuU /年级classNum tinyint,Notnull/班级人数)执行上述
11、SQL语句即可创建课程信息表相关表格createtable Student(/创建学生信息农studentNo char(10)primarykey,/学号studentName varchar(30)notnull,/sex char(2)notnull,/性别birthday datetimenotnull,/tH生日期 native varchar(30)notnull, / / K 族 classtudentNo Char( 10)notnull,/所属班级)执行上述SQL语句即可创建学主信息表相关表格createtable Course(/ /创建教师信息衣courseNo char
12、( 10)primaiykey, / / 课程号学生成绩管理系统设计courseName varchar(30)notnull,/课程名 creditHour numeriotnull,/分 courseHour tinyintnotnull,/课时数 priorCourse varchar(30)notnull, /先修课程 )执行上述SQL语句即可创建教师信息表相关表格createtable Score(/创建成绩衣studentNo char(10)primarykey, / / 号 courseNo char( 10)primarykey,/ 课程号 term char(10)notn
13、ull,/开课学期 score numeriotnull,/成绩)执行上述SQL语句即可创建成绩表相关表格五、数据库的运行和维护5.1定义基本表的创建、修改及删除;索引的创建和删除。5.1.1基本表的创建,建表语句createtable Student(/创建学生衣studentNo char(10)notnull, studentName varchar(30)notnull, sexchar(2)notnull,birthdaydatetimenotnull,nativevarchar(20)not null,classtudentNo Char(10)notnull, constrain
14、t studentPK primarykey(StudentNO),constraint studentPK1 foreignkey(classtudentNo)eferences class(classtudentNo)5.1.2基本表的删除droptable Student5.2数据操作5.2.1单表查询:查询学号为“0800006”生的XXselect studentNamefrom Studentwhere studentNo= 08000061结果:结賓I鱼消邑studentNameV * 1 逹静J5.2.2连接査询查询学生的学号、,所选课程的课程号、课程名和成绩SelectStu
15、dent.studentNo,Student.studentName.Class.classNoXlass.className,Score.score from Student?Class,Score,CourseWhere Student.studontNo=Scoe.studentNo and Student.classNo=Class.classNo andCourse courseNo=Score. courseNo结果:口结果J逍县student NostudentNamedassNoclass Namescore1 0700001 jI李小勇CS0701计算机科学与技术07
16、9;班982070M1李小勇CS07Q1计算机科学与技术”如班8230700001李小勇CS0701计算机科学与技术07©班5S407QM2刘方晨IS0701信息管理与信息系统片初班6950700002刘方晨IS0701信息管理与信息茶统匚朗班87G0700002IS0701信息管理与信息系统乔M班f0700002刘方晨IS0701信息管理与信息系统37©班90807OT003壬红敏IS0701信息管理与信息系统乔M班4690700003王红蹶IS0701信息管理与信息泵统EQ班38100700003王红敏IS0701信息管理与信息系统07朗班505.2.3操作结果集査询查
17、询0700003号同学和0800002号同学共同选修的课程Select courseNoFrom ScoreV/here studentNo=,0700003,IntersectSelect courseNoFrom scoreV/here studentNo=,0800002,查询结果:貉果'二消息courseNo1 ! boi!2 0075.2.4嵌套查询查询选修了 “CS0701”这门课的所有学生的学号、岀生日期以及籍贯。Select studentNo,studentName、birthday,nativeFrom StudentV/here studentNo in(sele
18、ct studentNoFrom scoreWhere classNo='CS0701)查询结果:G1结果消息student No student Namebirthdaynative1 j 07CCQ01 | 李小勇!199u-l2-21 OC:aO:M.OCO南昌5-3数据库更新操作5-3.1插入数据向Student表中添加一项记录::叶问,学号:0800016,性别:男,出生年月:1992619,籍贯:,班级编号:CP0802InsertIntoStudent(studentNo,studentName. sex,birthday,native,classNo)Values(
19、39;0800016T 叶问丫男,1992-6-19,;,CP0802,结果:0803018叶问男5.3.2修改数据修改X敬的学号为0800019Update StudentSet StudentNo=,0800019'V/here StudentName=,X 敏 I0800019吴蹶女* NULfJLLAUZ1992-6-19 0:00:00 甫昌CP08021992-1-20 0:00:00福建CPOS02AUZNULLNULL5.3.3删除数据删除所有金融学院学生的记录Deletefrom Class7here (institute='金融学 I;?);dassNoda
20、ssNameinstitutegragedassNum注册会计08 *01班会计学院2008fJLLCP0802注珊会计08-02班会计学院2008NULLCP0SO3注册会计班会计学院2008NULLCS0701计算机科学与信息管理学兇2007NULLCS0702计篡机科学与信息管理学院2007NULLCS0801计算机科学与信息管理学院2008NULLIS0701信息管理与信.信息管理学院2007NULLIS0301信息管理与信.信息管理学院2008NULLAU2MJ1LMLWLL5.4为数据库建立索引5.4.1索引的建立createindex studentNameSM on Stude
21、nt(studentName)5.4.2索引的删除dropindex studentNameSM on Student(studentName)5.5数据库的安全性所谓计算机系统安全性,是指为计算机系统建立和釆取的各种安全保护措 施,以保护计算机系统中的硬件,软件及数据,防止其偶然或恶意的原因使系 统遭到破坏,数据遭到更改或泄露等。为防止因用户非法使用数据库造成数据 泄露、更改或破坏,必须釆取一些安全性控制措施以保证数据库中数据的安全、 可靠和正确有效。安全性控制的防X对象是非法用户和非法操作,防止他们对数 据库数据的非法存取。主要采用用户标识及鉴定,使用用户名或用户标识号来标 明用户身份。用
22、户想要对对数据库内容进行相关操作,必须申请一个用户名或用户标识 号,每次登陆都必须输入该用户名以及相应正确的口令,然后系统对其进行验证, 只有通过验证的用户方可对数据库进行操作。5-6数据库的完整性 5.6.1实体完整性定义:在班级表Class中将classNo定义为主码。createtable Class(/创建class衣classNo char(10)notnull,className varchar(30) notnull,institute varchar(30)Notnull,gradesmalli ntNotnull,classNumtinyintnull,constraint
23、ClassPK primarykey(classNo)5.6.2参照完整性定义:在学生成绩表Score中将studentNo、courseNo定义为 外码。createtable Score(studentNo char( IO)notnull,courseNo char(10)notnull,term char(10)notnull,score numeric(5,1)default 0 notnull,Check(Score between 0.0 and 100.0),Constraint ScorePK primaiykey(studentNoxourseNo),Constraint ScoreFKl foreignkey(studontNo)References Student(studentNo),Constraint ScoreFK2 for
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 临沭事业编考试真题及答案
- 2026 北师大版三年级语文语文园地六写字教学课件
- 2026九年级上语文乡愁意境营造技巧
- 税收基础知识试题及答案
- 煎药工培训试题及答案
- 企业安全管理组织落实专人负责制度
- 交通运输执法部门消防安全责任制度
- 小区物业工程部奖惩制度
- 物业公司廉政奖惩制度
- 企业内部职工奖惩制度
- 2024年北师大版五年级下册数学第一单元综合检测试卷及答案
- 《小儿过敏性紫癜》课件
- GB 15630-1995消防安全标志设置要求
- 第一课冬休みの予定 单词课件-高中日语华东理工版新编日语教程2
- 中石油设备及管道定点测厚指导意见
- 文物保护学概论(全套260张课件)
- ULA线束拉力对照表
- 红日药业新员工入职培训计划
- 装卸搬运作业安全风险告知卡
- 三乙醇胺msds安全技术说明书
- 施工晴雨表1(最终版)
评论
0/150
提交评论