时, 在相关的关系型数据库中, 联系被映射成一个表 T, 表 T 中包含所有从 E 和 F 转化而来的两个表的主键的所有属性, 列构成了表 T 的主键
T 也包含了所有附加在联系 R 上的属性构成的列...:
创建函数依赖集 F 的等价函数依赖集 H, 它的右边只有单个属性
顺次去掉 H 中非关键的单个依赖
将 H 中的一项 X->Y 去掉, 得到新的函数依赖集 J, 若 J+ =H + 则称这个函数依赖是非关键的...在不改变 H+ 的前提下, 将 H 中的每个函数依赖用左边属性更少的函数依赖替换
注意: 第三部中函数依赖集如果发生了变化, 需要返回第二步
用合并规则创建一个等价的函数依赖集 M
来个例题:..., 求 F 的最小覆盖 M
解题步骤:
本来就做好了
依次尝试去掉非关键依赖
尝试去掉 a->b, 得到 , 所以去掉 a->b 后, 在 G 中无法再推导出 a->b, G+ !...在 1NF 的基础上, 消除了非主属性对于键(指候选键)的部分函数依赖
判断方法:
找出表中所有非主属性
查看是否存在有非主属性对键的部分函数依赖, 若无, 则符合 2NF
修改为符合 2NF: