中国地质大学(武汉)数据库实习报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数据库系统课程设计
学生姓名:***
班学号:******-05
指导老师:***
中国地质大学信息工程学院
2015年6月
1. 需求分析
1.1 需求说明
该系统包括教师、学生、班级、系和课程等信息,基本情况如下:教师有工作证号、姓名、职称、电话等;学生有学号、姓名、性别、出生年月等;班级有班号、最低总学分等;系有系代号、系名和系办公室电话等;课程有课序号、课名、学分、上课时间及名额等。每个学生都属于一个班,每个班都属于一个系,每个教师也都属于一个系l 每个班的班主任都由一名教师担任。一名教师可以教多门课,一门课可以有几位主讲老师,但不同老师讲的同一门课其课序号是不同的(课序号是唯一的)。一名同学可以选多门课,一门课可被若干同学选中。一名同学选中的课若已学完,应该记录有相应成绩。本单位学生、教师都有重名,工作证号、学号可以作为标识。教学系统主要提供数据维护、选课和信息查询。其中常见的查询有:系统中各对象的基本信息查询。查询指定班、系的学生信息(名单、人数等)。查询学生的成绩、学分情况。查询教师授课情况和学生选课情况。。。等等。
1.2 需求理解
设计一个教务管理系统需要实现以下三个功能:
①数据维护:数据内容的维护(无错漏、无冗余、无有害数据)、数据更新、数据逻辑一致性等方面的维护。
②选课:学生对学校所开设的课程有一定的选择自由,包括选择课程、任课教师和上课时间,选择适合自己的学习量和学习进程。
③信息查询:点击教务系统进行信息的获取与咨询。
信息查询的需要实现以下四个功能:
①查询系统中各对象的基本信息
②查询指定班、系的学生信息(名单、人数等)
③查询学生的成绩、学分情况
④查询教师授课情况和学生选课情况
整个教务系统中各个对象的分析:
①学生:正在学校、学堂或其他学习地方受教育的人。每个学生有一个唯一的确定其身份的学号,学号由11位数字组成。前四位为其入学年份,中间三位为数字“100”,后四位为随机编号。每位学生有自己的姓名,姓名为20个字节,但不同的同学可能姓名相同。学生分为两种性别:“男”和“女”。学生还记录有出生年月的信息,为20个字节的长度。每个学生都属于一个班级,学生的别名为student。
②教师:受过专门教育和训练的人,并在学校中担任教育教学工作的人。每个教师都有一个唯一确定其身份的工作证号,工作证号为6位字符型。每位老师都有自己的名字,姓名为字符型,10个字符,不同的老师可能姓名相同。每位老师都有一个职称,职称分为:助教、讲师、副教授、教授。职称是字符型,三个字符。每位教师都在教务科留下其电话号码,字符型11位。每位教师都属于一个系,教师的别名是teacher。
③系:高等院校按照专业性质设置的教学行政单位。每个系都有唯一表示它的系代号,为三位数字。系有系名,不同的系的系名不相同。系办公室有电话号码,7位。系下属班级,系的别名是depart。
④班级:学校的基本单位,通常由一位或几位学科教师与一群学生共同组成。班级有一个唯一识别它的班级序号,共六位。前三位是专业代号,中间两位是班级成立的年份,最后一位是同专业的班级序号。每个班级对应有一个应修最低总学分,班级隶属于系。每个班都有一名担任班主任的教师,班级的别名是class。
⑤课程:学校学生所应学习的学科总和及其进程与安排。课程有一个唯一的课序号(8位),课程名称(30位),学分(2位),上课时间(10个字符)及名额(5位)。课程的别名是course。
1.3 系统结构图
1.4 数据字典
1.5 数据流图
2. 概念设计2.1 分E-R图
2.2 总E-R图
3. 逻辑结构设计
3.1 E-R模型转换
3.1.1 实体间的联系分析
(1)系和班级间的联系是1:N的联系,可以转化为一个独立的关系模式,也可以与N端对应的关系模式合并。这里选择将该联系与N端对应的关系模式合并,则在班级实体中加一个“所在系号”的属性。
(2)班级和学生间的联系是1:N的联系,可以转化为一个独立的关系模式,也可以与N 端对应的关系模式合并。这里选择将该联系与N端对应的关系模式合并,则在学生实体中加一个“所在班号”的属性。
(3)系和教师间的联系是1:N的联系,可以转化为一个独立的关系模式,也可以与N端对应的关系模式合并。这里选择将该联系与N端对应的关系模式合并,则在教师实体中加一个“所在系号”的属性。
(4)班级和教师间的联系是1:1的联系,可以转化为一个独立的关系模式,也可以与任意一端端对应的关系模式合并。这里选择与班级对应的关系模式合并,则需要在班级的关系模式中加入关系模式的码,及在班级实体中加入一个“班主任工作证号”的属性。
(5)学生与课程间的联系为M:N的联系,需要转换成一个关系模式,与该联系相连的各实体的码及联系本身的属性均转换为关系的属性,各实体的码组成关系的码或关系码的一部分。在这里建立一个学生课程关系模式,将学号和课程号作为该关系模式的主码,成绩也是该关系模式的一个属性。即学生课程(学号,课程号,成绩)。
(6)教师与课程间的联系为M:N的联系,需要转换成一个关系模式,与该联系相连的各实体的码及联系本身的属性均转换为关系的属性,各实体的码组成关系的码或关系码的一部分。在这里建立一个教师课程关系模式,将教师工作证号和课程号为该关系模式的主码。即教师课程(工作证号,课程号)。
3.1.2 关系模式
(1)Student(S_Num,S_Birth,S_Name,S_Sex)
在此关系模式中,U={ S_Num,S_Birth,S_Name,S_Sex }
F={ S_Num -> S_Birth , S_Num -> S_Name , S_Num -> S_Sex }
因为S_Num->{ S_Num,S_Birth,S_Name,S_Sex }所以S_Num为关系模式的主码
因此该关系模式为Student(S_Num,S_Birth,S_Name,S_Sex)
(2)Teacher(T_Num,T_Name,T_Title,T_Phone)
在此关系模式中,U={ T_Num,T_Name,T_Title,T_Phone }
F={ T_Num –> T_Name , T_Num –> T_Title , T_Num –> T_Phone }
因为T_Num –>{ T_Num,T_Name,T_Title,T_Phone }