资源预览内容
第1页 / 共18页
第2页 / 共18页
第3页 / 共18页
第4页 / 共18页
第5页 / 共18页
第6页 / 共18页
第7页 / 共18页
第8页 / 共18页
第9页 / 共18页
第10页 / 共18页
亲,该文档总共18页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
数据库规范化案例 之中国好声音中国好声音信管1101 孙常杰张利庆目的背景介绍表格编制规范化总结一、目的本例,以2012年在浙江卫视播出的中国好声音为题材,利用参赛选手与导师之间的关系,以及比赛情况编制二维表。并逐渐规范化范化,以记录比赛情况。让知识应用于实践。通过对表的规范化,加深理解三范式之间的关系,并掌握规范化的基本思路。二、背景介绍以下记录的是导师考核、终极对决部分的比赛情况。 张玮多亮多亮梁博梁博张赫赫宣宣那英那英组徐海星袁娅维权振东吉克隽逸刘刘欢组王韵王韵壹壹吴莫吴莫愁愁金池金池大山大山丁丁丁丁平安平安金志金志文文关喆关喆庾澄庾澄庆组杨坤坤组梁博梁博吉克隽逸金志金志文文吴莫吴莫愁愁终极极对决决背景介绍在这里,为方便表格操作,我们以其中两个队(刘欢组、那英组)为例,进行规范化设计。三、表格编制为了方便数据操作,我们分别为两组编制团队编号(Team Number)、学员编号(Student Number),并根据学员最后参加的比赛,评定其唱功水平(Singing)、另外还有属性学员姓名(Student Name)、导师(Teacher)、学员比赛的级别(Competition)。队伍刘欢吉克隽逸A终极对决徐海星B四强袁娅维B四强权振东B四强那英张玮B四强多亮B四强梁博A终极对决张赫宣B四强四、规范化Team NumberTeacherStudent NumberStudent NameSingingCompetition201201刘欢1211吉克隽逸A终极对决201201刘欢1212徐海星B四强201201刘欢1213袁娅维B四强201201刘欢1214权振东B四强201202那英1221梁博A终极对决201202那英1222张赫宣B四强201202那英1223多亮B四强201202那英1224张玮B四强第一范式:目的:原子属性上表各字段都是单一属性不可再分关系中各数组所含数量都相同存在主键团队编号(Team Number)、学员编号(Student Number),其余各属性都依附于主键由此可以判断上表符合第一范式的定义潜在问题细看表格可以发现存在着一些潜在问题: 数据冗余:每个团队导师和队员出现的次数相同。更新异常:假若团队导师临时有事而需要更换导师时,其所属的团队每位学员的导师名字都需要进行更改。删除异常:若某位学员在一场比赛中被淘汰,当删除该学员时,他所参加的比赛信息将会丢失。依赖关系这些问题是由于存在如下依赖决定关系造成的: 团队编号(Team Number) (Teacher 学员编号(Student Number) 学员姓名(Student Name) 学员唱功水平(Singing) 学员比赛的级别(Competition)将第一范式中的有依赖关系的主属性和非主属性分离出来得到新的表团队编号(号(Team Number) 导师(Teacher)第二范式Team NumberTeacher201201刘欢201202那英Student NumberStudent NameSingingCompetition1211吉克隽逸A终极对决1212徐海星B四强1213袁娅维B四强1214权振东B四强1221梁博A终极对决1222张赫宣B四强1224张玮B四强1223多亮B四强目的:消除部分依目的:消除部分依赖上面两表之间应存在关联关系,将两表中的主键提取出来形成一个新的表格就会得到关系表,如下:Team NumberStudent Number20120112112012011212201201121320120112142012021221201202122220120212232012021224存在的问题观察以以上三张表我们发现第二张表存在以下问题:数据冗余:歌唱水平(Singing)与比赛级别(Competition)存在数据的冗余(重复);更新异常:由于数据冗余的原因,如果需要修改比赛级别与歌唱水平之间的对应关系,那么需要更改多条记录,否则会存在数据不一致的情况;传递关系以上问题的产生,是由于存在以下传递关系产生的:学员姓名唱功水平比赛级别第三范式我们继续对以上数据表进行规范化,得到两张新的表:Student NumberStudent NameSinging1211吉克隽逸A1212徐海星B1213袁娅维B1214权振东B1221梁博A1222张赫宣B1224张玮B1223多亮BSingingCompetitionA终极对决B四强目的:消除目的:消除传递依依赖 至此,源表已经满足了三范式的要求。以下是规范化后的结果: Student NumberStudent NameSinging1211吉克隽逸A1212徐海星B1213袁娅维B1214权振东B1221梁博A1222张赫宣B1224张玮B1223多亮BSingingCompetitionA终极对决B四强Team NumberStudent Number20120112112012011212201201121320120112142012021221201202122220120212232012021224Team NumberTeacher201201刘欢201202那英总结通常,我们只将表规范化到三范式。因为,虽然规范化不断深入,数据库的冗余会减少,但是多张表之间的联系会增加,就造成数据检索效率的降低。数据库的规范化是优化表的结构和把数据组织到表中的实践,这样做数据才能更明确。规范化使你能够改变业务规则、需求和数据而不需要重新构造整个系统。(www.yesky.com)end
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号