数据库设计方案学生成绩管理系统.doc

上传人:土8路 文档编号:11066693 上传时间:2021-06-25 格式:DOC 页数:28 大小:819KB
返回 下载 相关 举报
数据库设计方案学生成绩管理系统.doc_第1页
第1页 / 共28页
数据库设计方案学生成绩管理系统.doc_第2页
第2页 / 共28页
数据库设计方案学生成绩管理系统.doc_第3页
第3页 / 共28页
数据库设计方案学生成绩管理系统.doc_第4页
第4页 / 共28页
数据库设计方案学生成绩管理系统.doc_第5页
第5页 / 共28页
点击查看更多>>
资源描述

《数据库设计方案学生成绩管理系统.doc》由会员分享,可在线阅读,更多相关《数据库设计方案学生成绩管理系统.doc(28页珍藏版)》请在三一文库上搜索。

1、StudentManagerSystem学生管理系统数据库设计方案目录一 需求分析.31 数据需求.32 功能需求.3二 逻辑数据库设计.41 标识实体.42 标识关系.43 标识实体和关系的属性.44 确定ER模型中实体的属性域和关系属性域.65 确定候选键,主键和备用键属性.76 特化和泛化实体.87 检察模型的数据冗余.88 模型是否支持用户事务.99 创建表1010 表规范化检查.1111 再次检察模型是否支持用户事务.1312 检察业务规则.1513 用户参与讨论逻辑数据库设计.16三 物理数据库设计.161. 设计基本表 .162. 设计派生数据的表示.173. 设计其他业务规则.

2、184. 分析事务.185. 选择文件的组织方式.206. 选择索引.207. 设计用户视图.208. 设计访问规则.229. 考虑引入受控冗余.24四 附录.241数据字典表汇总.242SQL查询的作业.263总结和感想.27一需求分析1数据需求11学生整个学生管理系统的主体,每一个学生有自己的详细的信息。学生的个人信息,包括:姓名,年龄,身份证号码。学生的家庭信息,包括:家庭住址,邮政编码,家庭电话号码。学生的学校信息,包括学号,登陆密码,学院,班别,各科的成绩,所选的课程。12班级每个班级有学生的个数,班级名称,班级代号,以及该班级的班主任。1学院每个系别有的学院代号,学院名字,班级数量

3、,学生的数量,老师的数量。1教师分为一般老师和班主任老师。每个教师有姓名,教师号,登陆密码,所教课程集合,是否是班主任,所带的班级,所属于学院,个人电话。一个班主任老师可以管理多个班级,一个班级只有一个班主任老师。15课程每个课程有课程号,授课的教师号,上课的地点,上课的时间,该课程的人数。16成绩每个成绩,有所属于的学生,所属于的课程。2功能需求21学生可以使用的功能:(a)每个学生可以查询到自己不同课程的不同成绩,也可以查询所有课程的成绩。(b)每个学生可以查询到自己所选择的某个课程的任课老师,上课地点和上课时间。也可以查询到自己的课程表。(c)每个学生可以查询到自己的个人的信息,姓名,家

4、庭住址,家庭电话,邮政编码,学号,系别,班别,班主任的姓名,电话。并且可以打印自己的个人信息。(d)每个学生可以修改一些自己的个人信息,如:家庭住址,家庭电话,邮政编码,登陆密码。22老师可以使用的功能:(e)每个老师可以查询自己的所教的某个课程的上课地点,上课时间,上课人数,和上课学生名单。并且可以打印出学生的名单表。(f)每个老师也可以查询到自己一周的授课表。并且可以打印该授课表。(g)每个老师可以对自己所教课程的学生成绩进行录入,修改,删除。(h)每个老师可以查询到自己所教课程的所有的学生的成绩,可以按升序,降序来显示,并且可以打印该成绩表。(i)每个老师可以计算出自己所教课程的及格人数

5、,不及格人数,通过率,及格率。(j)每个班主任可以统计自己班学生数,查询自己所带的班全部学生,全部课程的成绩,并且可以打印该成绩表。(k)每个班主任可以查询自己所带的班的全部学生的个人信息:姓名,家庭住址,家庭电话,邮政编码,学号,系别,班别。并且可以打印自己的个人信息。(l)家校联系,每个班主任可以查询和打印某个学生的全部成绩,并且将该表邮寄给学生家长。23系统管理员可以使用的功能:(m)对学生的个人信息进行录入,删除和修改。(n)对老师的个人信息进行录入,删除和修改。(o)对老师的操作权限进行分配。(p)对数据库进行功能维护。二逻辑数据库设计1 标识实体由数据需求的得出如下实体:Stude

6、nt(学生)Teacher(老师)Class(班级)College(学院)Course(课程)EntiyName(实体名称)Description(实体描述)Occurrence(事件)Student学生选课,上课,考试等Teacher一般老师班主任老师上课,管理班级,管理学生,Class班级隶属于一个学院College学院开课程,拥有多个专业班级Course课程一个学院可以开始多门课程表数据字典中的实体部分2标识关系21实体关系的多样性约束实体关系类型实体Student(学生)Chiose(选择)多对多Course(课程)Has(拥有)一对多Course(课程成绩)Teacher(老师)(班

7、主任)Managed(管理)一对多Student(学生)(班主任)Managed(管理)一对多Class(班级)Teach(教)一对多Course(课程)Class(班级)Has(拥有)一对多Student(学生)College(学院)Has(拥有)多对多Student(学生)Has(拥有)一对多Class(班级)Has(拥有)一对多Teacher(老师)Open(开设)一对多Course(课程)Course(课程)表2.学生管理系统的实体关系粗表实体多样性关系多样性实体Student(学生)1* Chiose(选择)1*Course(课程)11Has(拥有)1*Course(课程成绩)Tea

8、cher(老师)11(班主任)Managed(管理)0*Student(学生)11(班主任)Managed(管理)0*Class(班级)11Teach(教)0*Course(课程)Class(班级)11Has(拥有)1*Student(学生)College(学院)11Has(拥有)1*Student(学生)11Has(拥有)1*Class(班级)11Has(拥有)1*Teacher(老师)11Open(开设)1*Course(课程)Course(课程)表3.学生管理系统的实体关系约束表22实体关系(ER)模型图1.学生管理系统的实体-关系(ER)模型初稿3 标识实体或关系的有关属性实体属性St

9、udent(学生)studentName(姓名),studentCardId(身份证号码) studentSex(性别)studentAddress (地址),studentZipcode(邮政编码),studentNo(学号) Teacher(老师)teacherName(姓名),teacherNo(教师号),teacherSex(性别),teacherTel(电话号码)Class(班级)className(班级名称),classNo(班级号) College(学院)collegeName(学院名称), collegeNo(学院号)Course(课程)courseNo(课程号),course

10、Name(课程名), courseTime(上课时间),courseAddress(上课地址) , courseMark(分数)表4.实体属性表实体关系实体属性StudenthasCoursecourseMark(分数)表5.关系属性表4 确定ER模型中实体的属性域和关系属性域EntiyName(实体)Attributes(属性)Description(描述)Null(可否为空)Same(可否相同)Multivalued(可否多值)Restrains(约束)Student(学生)studentName学生姓名NOYESNO小于10位studentCardId身份证号NONONO18位stude

11、ntSex性别NOYESNOmale/femalestudentAddress地址NOYESNO小于50位studentZipcode邮政编码NOYESNO6位studentNo学号NONONO10位Teacher(老师)teacherName教师姓名NOYESNO小于10位teacherNo教师号NONONO5位teacherSex性别NOYESNOmale/femaleteacherTel电话号码NONONO小于20位Class(班级)className班级名称NONONO小于20位collegeNo班级号NONONO3位College(学院)collegeName学院名称NONONO小于

12、20位collegeNo学院号NONONO3位Course(课程)courseNo课程号NONONO5位courseName课程名NONONO小于20位courseTime上课时间NOYESNO小于20位courseAddress上课地址NONONO小于20位表6.数据字典中的实体属性域Connection(关系)Attributes(属性)Description(描述)Null(可否为空)Same(可否相同)Multivalued(可否多值)Restrains(约束)hascourseMark分数学生拥有成绩NOYESNO0-100表7.数据字典中的关系属性域5确定候选键,主键和备用键属性5

13、1StayHome主键图2.具有主键的学生管理系统的实体-关系(ER)模型52将候选键,主键和备用键存档EntiyName(实体)Attributes(属性)Description(描述)Key(键值)Student(学生)studentName学生姓名 studentCardId身份证号码Altermate KeystudentSex性别 studentAddress地址 studentZipcode邮政编码 studentNo学号Primart KeyTeacher(老师)teacherName教师姓名 teacherNo教师号Primart KeyteacherSex性别teacherT

14、el电话号码Class(班级)className班级名称Altermate KeyclassNo班级号Primart KeyCollege(学院)collegeName学院名称Altermate KeycollegeNo学院号Primart KeyCourse(课程)courseNo课程号Primart KeycourseName课程名Altermate KeycourseTime上课时间courseAddress上课地址courseMark分数表8.数据字典中的候选键,主键和备用键存档6特化和泛化实体本系统将学校中的班主任老师和一般教学的老师都模型化为实体teacher。7检察模型的数据冗余

15、71检察一对一(1:1)关系最初设计实体模型时候,出现实体课程和成绩,两者是一一对应的关系,经过分析,两者其实是一个包含于的概念。成绩实际是输入课程中的一部分。72检察冗余关系Student与Class和College之间出现冗余关系,Class属于某一个College,Student也属于某一个College,但是同时Student属于某一个Class。我们可以通过Student在哪个班就可以判断,Student属于哪个学院,所以Student与College的关系是冗余关系,但是为了方便数据查询我考虑继续使用这条冗余关系。Teacher与Course和College之间出现冗余关系,Cou

16、rse可以通过是哪个Teacher教的,从而得到Course是哪个学院开设的课程。所以Course与College之间的关系是冗余的,在后面建立Course表的时候需要注意。原来设计模型中,Teacher与学生还有一条teach关系,但是因为Teacher可以通过上某Course,学生选某Course,就可以得到哪个老师教什么学生,所以Teacher teach Student这条关系冗余,已经将其删除掉了。73当访问冗余时间尺度考虑本系统属于作业,系统太小,暂时不考虑冗余时间的尺度。图3.删除冗余关系的学生管理系统的实体-关系(ER)模型8模型是否支持用户事务81数据模型中是否存在必需的属性

17、表6.数据字典中的实体属性域,表6的数据字典的实体的属性是必需的属性。82实体中是否有通路图4.学生管理系统的事务路径表9创建表91 Student表由学生实体属性得到的原始学生表Student(studentNo,studentName,studentCardId,studentSex,studentAddress,studentZipcode)由学生实体相关的关系Class(班级)11Has(拥有)1*Student(学生)College(学院)11Has(拥有)1*Student(学生)将collegeNo, classNo作为外键加入学生表中。得到Student(studentNo,s

18、tudentName,studentCardId,studentSex,studentAddress,studentZipcode,classNo,collegeNo)Primary Key studentNo Alternate Key studentCardIdForegin Key classNo references Class(classNo)Foregin Key collegeNo references College (collegeNo)92 Teacher表由教师实体属性得到的原始教师表Teacher(teacherNo,teacherName,teacherSex tea

19、cherTel)由教师实体相关的关系College(学院)11Has(拥有)1*Teacher(老师)将collegeNo作为外键添加到教师表中Teacher(teacherNo,teacherName,teacherSex,teacherTel,collegeNo)Primary Key teacherNoForegin Key collegeNo references College (collegeNo)93 Class表由班级实体属性得到的原始班级表Class(classNo, className)由Class相关的关系College(学院)11Has(拥有)1*Class(班级)Te

20、acher(老师)11(班主任)Managed(管理)0*Class(班级)将collegeNo和TeacherNo作为外键加入到Class表中Class(classNo, className,TeacherNo,collegeNo)Primary Key classNoAlternate Key classNameForegin Key collegeNo references College (collegeNo)Foregin Key TeacherNo references Teacher (TeacherNo)94 College表由学院实体属性得到的原始学院表College(col

21、legeNo,collegeName)Primary Key collegeNoAlternate Key collegeName95 Course表 由Course属性和关系得到原始Course表Course(courseNo, courseName, courseTime, courseAddress,courseMark)由课程相关的关系Student(学生)1* Chiose(选择)1*Course(课程)11Has(拥有)1*Course(课程成绩)Teacher(老师)11Teach(教)0*Course(课程)College(学院)11Open(开设)1*Course(课程)将s

22、tudentNo,teaacherNo,colleageNo作为外键加入到Course表Course(courseNo,courseName,courseTime,courseAddress,courseMark,studentNo,teacherNo,collegeNo)Primary Key courseNoAlternate Key courseNameForegin Key studentNo references Student (studentNo)Foregin Key TeacherNo references Teacher (TeacherNo)Foregin Key col

23、legeNo references College (collegeNo)有根据学生Student和课程Course多对多的关系,将上表拆分了两表Course(courseNo, courseName, courseTime, courseAddress, teacherNo)Primary Key courseNoAlternate Key courseNameForegin Key TeacherNo references Teacher (TeacherNo)StudentCourse(studentNo,courseNo, courseMark)Primary Key studentN

24、o,courseNoForegin Key studentNo references Student (studentNo)Foregin Key courseNo references Course (courseNo)10表规范化检查101检察Student表Student(studentNo,studentName,studentCardId,studentSex,studentAddress,studentZipcode,classNo,collegeNo)looegeNo可以从 ClassNo中得到,所以该表不符合3NF,但是为了查询方便,决定牺牲存储空间。102检察Teacher表

25、Teacher(teacherNo,teacherName,teacherSex,teacherTel,collegeNo)符合3NF。103 检察Class表Class(classNo, className,TeacherNo,collegeNo)由于ColleageNo可以用TeacherNo得到,所以不满足3NF。但是为了查询方便,决定牺牲存储空间。104 检察College表College(collegeNo,collegeName)符合3NF。105 检察Course表Course(courseNo, courseName, courseTime, courseAddress, te

26、acherNo) 课程表因为一个老师可以教多门课程,所以上表不满足3NF,但是为了查询效率,决定牺牲存储空间。StudentCourse(studentNo,courseNo, courseMark)满足3NF。106将所有表进行存档TableName表名称TableDefine表定义StudentStudent(studentNo,studentName,studentCardId,studentSex,studentAddress,studentZipcode,classNo,collegeNo)Primary Key studentNoAlternate Key studentCardI

27、dForegin Key classNo references Class(classNo)Foregin Key collegeNo references College (collegeNo)TeacherTeacher(teacherNo,teacherName,teacherSex,teacherTel,collegeNo)Primary Key teacherNoForegin Key collegeNo references College (collegeNo)ClassClass(classNo, className,TeacherNo,collegeNo)Primary Ke

28、y classNoAlternate Key classNameForegin Key collegeNo references College (collegeNo)Foregin Key TeacherNo references Teacher (TeacherNo)CollegeCollege(collegeNo,collegeName)Primary Key collegeNoAlternate Key collegeNameCourseCourse (courseNo, courseName, courseTime, courseAddress, teacherNo)Primary

29、Key courseNoAlternate Key courseNameForegin Key TeacherNo references Teacher (TeacherNo)StudentCourseStudentCourse(studentNo,courseNo, courseMark)Primary Key studentNo,courseNoForegin Key studentNo references Student (studentNo)Foregin Key courseNo references Course (courseNo)表9.数据字典中的表的定义11再次检察模型是否

30、支持用户事务事务需求的表(a)每个学生可以查询到自己不同课程的不同成绩,也可以查询所有课程的成绩。StudentCourse(studentNo,courseNo, courseMark)Primary Key studentNo,courseNo(b)每个学生可以查询到自己所选择的某个课程的任课老师,上课地点和上课时间。也可以查询到自己的课程表。StudentCourse(studentNo,courseNo, courseMark)Primary Key studentNo,courseNoCourse (courseNo, courseName, courseTime, courseAd

31、dress, teacherNo)Primary Key courseNoForegin Key TeacherNo references Teacher (TeacherNo)(c)每个学生可以查询到自己的个人的信息,姓名,家庭住址,家庭电话,邮政编码,学号,系别,班别,班主任的姓名,电话。并且可以打印自己的个人信息。Student(studentNo,studentName,studentCardId,studentSex,studentAddress,studentZipcode,classNo,collegeNo)Primary Key studentNoForegin Key cla

32、ssNo references Class(classNo)Foregin Key collegeNo references College (collegeNo)(d)每个学生可以修改一些自己的个人信息,如:家庭住址,家庭电话,邮政编码。Student(studentNo,studentName,studentCardId,studentSex,studentAddress,studentZipcode,classNo,collegeNo)Primary Key studentNoForegin Key classNo references Class(classNo)Foregin Key

33、 collegeNo references College (collegeNo)(e)每个老师可以查询自己的所教的某个课程的上课地点,上课时间,上课人数,和上课学生名单。并且可以打印出学生的名单表。Course (courseNo, courseName, courseTime, courseAddress, teacherNo)Primary Key courseNoForegin Key TeacherNo references Teacher (TeacherNo)StudentCourse(studentNo,courseNo, courseMark)Primary Key stud

34、entNo,courseNo(f)每个老师也可以查询到自己一周的授课表。并且可以打印该授课表。Course (courseNo, courseName, courseTime, courseAddress, teacherNo)Primary Key courseNoForegin Key TeacherNo references Teacher (TeacherNo)StudentCourse(studentNo,courseNo, courseMark)Primary Key studentNo,courseNo(g)每个老师可以对自己所教课程的学生成绩进行录入,修改,删除。Student

35、Course(studentNo,courseNo, courseMark)Primary Key studentNo,courseNo(h)每个老师可以查询到自己所教课程的所有的学生的成绩,可以按升序,降序来显示。并且可以打印该成绩表。StudentCourse(studentNo,courseNo, courseMark)Primary Key studentNo,courseNo(i)每个老师可以计算出自己所教课程的及格人数,不及格人数,通过率,及格率。StudentCourse(studentNo,courseNo, courseMark)Primary Key studentNo,c

36、ourseNo(j)每个班主任可以统计自己班学生数,查询自己所带的班全部学生,全部课程的成绩,并且可以打印该成绩表。StudentCourse(studentNo,courseNo, courseMark)Primary Key studentNo,courseNoStudent(studentNo,studentName,studentCardId,studentSex,studentAddress,studentZipcode,classNo,collegeNo)Primary Key studentNoForegin Key classNo references Class(classN

37、o)Foregin Key collegeNo references College (collegeNo)(k)每个班主任可以查询自己所带的班的全部学生的个人信息:姓名,家庭住址,家庭电话,邮政编码,学号,系别,班别。并且可以打印自己的个人信息。Student(studentNo,studentName,studentCardId,studentSex,studentAddress,studentZipcode,classNo,collegeNo)Primary Key studentNoForegin Key classNo references Class(classNo)Foregin

38、 Key collegeNo references College (collegeNo)Class(classNo, className,TeacherNo,collegeNo)Primary Key classNoForegin Key collegeNo references College (collegeNo)Foregin Key TeacherNo references Teacher (TeacherNo)(l)家校联系,每个班主任可以查询和打印某个学生的全部成绩,并且将该表邮寄给学生家长。Student(studentNo,studentName,studentCardId,

39、studentSex,studentAddress,studentZipcode,classNo,collegeNo)Primary Key studentNoForegin Key classNo references Class(classNo)Foregin Key collegeNo references College (collegeNo)Class(classNo, className,TeacherNo,collegeNo)Primary Key classNoForegin Key collegeNo references College (collegeNo)Foregin

40、 Key TeacherNo references Teacher (TeacherNo)(m)对学生的个人信息进行录入,删除和修改。Student(studentNo,studentName,studentCardId,studentSex,studentAddress,studentZipcode,classNo,collegeNo)Primary Key studentNoForegin Key classNo references Class(classNo)Foregin Key collegeNo references College (collegeNo)(n)对老师的个人信息进行录入,删除和修改。Teacher(teacherNo,teacherName,teacherSex,teacherTel,collegeNo)Primary Key teacherNoForegin Key collegeNo references College (collegeNo)(o)对老师的操作权限进行

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

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1