DBA之路之数据库设计案例
此处引用某老师的案例给大家说明,还有就是希望大家看此篇文章前先看前面的两篇不然会有些懵哈:http://linuxclub.info/category/%E6%95%B0%E6%8D%AE%E5%BA%93%E7%AE%A1%E7%90%86/
教学管理
1.基本需求
某学校设计学生教学管理系统,学生实体包括学号、姓名、性别、生日、名族、籍贯、简历、入学日期,每名学生选择一个主修专业,专业包括专业编号和名称,类别,一个专业属于一个学院,一个学院可以有若干个专业,学院信息要存储学院号、学院名、院长、教学管理还要管理课程表和学生成绩。课程表包括课程号、课程名、学分,每门课程由一个学院开设。学生选修的每门课程获得一个成绩。
设计该教学管理的ER模型,然后转化为关系模型。
Entiy Relationship 实体关系ER模型的意思,我们先从需求中抽取实体信息
实体: 学生 专业 学院 课程
2.下面我们分析实体记录的属性
实体表要记录的属性:
学生(学号,姓名,性别,生日,籍贯,名族,简历,入学日期)
专业(专业号,专业,类别)
学院 (学院号,学院名称,院长)
课程 (课程号,课程名,学分)
3.实体关系
由ER模型转换的关系模型是:这里蓝色字尤其重要最后增加字段关联
学生(学号,姓名,性别,生日,籍贯,名族,简历,入学日期、专业号)
专业(专业号,专业,类别,学院号)
学院 (学院号,学院名称,院长)
课程 (课程号,课程名,学分,学院号)
关系表 多对多
成绩表 (学号,课程号,成绩,时间,地点)
实体间关系的转换规则
(1)一个1:1关系可以转换为一个独立的关系模式,也可以与任意一端所对应的关系模式合并。
(2)一个1:n关系可以转换为一个独立的关系模式,也可以与n端所对应的关系模式合并。
(3)一个m:n关系转换为一个关系模式。转换的方法为:与该关系相连的各实体的码以及关系本身的属性均转换为关系的属性,新关系的码为两个相连实体码的组合。
(4)三个或三个以上实体间的多元关系转换为一个关系模式。
从头到这里就是表明用ER图表明由实体转关系的一个整理。至今为止这个数据库设计基本就这么一个套路,当然后面还可以增加很多内容比如,一对多的关系转换多对多的关系转换,下面由于我精力有限而且要上班就直接贴图给大家看下理解下。在此解释其实数据库管理员跟运维人员只需要知道前面的知识足以了哈!
希望大家看完后有所进步能对大家有帮助,欢迎大家加大脸猫学习交流:QQ:203833507,关注我的公众号有更多文章分享