赞
踩
目录
问:那么什么是数据冗余呢?
答:指相同的数据在多个地方的存在,或者说表中的某个列的,可以由其他列来计算得到,这样的数据就是冗余的。这里所说的,那是要尽量减少数据的冗余,而不是说要完全的没有冗余的数据,因为在一些情况下,必要的数据冗余也是必须的。
例子:
分析:
每一列不可拆分,所有列由基本的数据类型组成,是二维表(但是还是存在冗余【反范式】)
例子:show creat table selectcourse;
分析:学号课程名称组成符合组件,有可能不满足第二范式要求的,学分只和课程名称名称关联也就是上面的第二个,总结是不符合。
拆分成符合:
分成:《学分表》《课程表》《学生选课关系表》
show create table study\G
show create table course\G
前两种表只有一个主键so满足第二范式要求;
show create tablestudycourse\G
第三张表不存在非主键的依赖关系也是符合第二范式。
修改结果
已满足第二范式看是否满足第三范式。
例子:
分析:但是学院的地址和学院又有依赖关系,那就是说学院地址和学院具有传递依赖关系。
拆分改造:《学生信息表》《学院信息表》
结论:第三范式该造后不会有数据冗余和数据维护异常。
按下面的需求,设计一个电子商务网站的数据结构
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。