规范化理论
图中高级职称人数分为教授和副教授,它有原子值,将它去掉后,才能够成为第一范式.
下图中的数据表是存在部分依赖的,CREDIT列仅CNO就可以确定.如果要升级为第二范式需要将该列去除.
思考题:
数据冗余: CREDIT列
更新异常:如果要更新学分的话,需要更新所有相关的学分才行.
插入异常:假如有一门新的课程C08,它的学分是6分,现在没人选,则无法插入到该表中.
删除异常:假如把学生信息给清除掉,那么学分信息也被清除了.
解决方法:将CREDIT从原关系模式中去掉,把CNO和CREDIT提取出来作为新的关系模式.
ps:主属性:候选键中出现过的属性都是主属性.
下图肯定是第二范式,因为单属性不可能存在部分属性依赖的.
想要成为第三范式,和上图的解决方式类似.
下图中的一定是第三范式,因为它的候选键是SJ和ST,则S,J,T都是主属性,没有非主属性.
BC范式的要求是决定因素x需要是候选键,而下图中的x是SJ(确定T),T(确定J),T不是候选键,因此这个不是BC范式.