数据库三范式

第一,属性不可分。主要为了规范化。
第二,一范式基础上,消除非主属性对主键的部分函数依赖。
举个例子。
一个表中有属性A,B,C,D
主键是AB
C依赖主键AB
D依赖A
那么D就是部分依赖于主键。
为了消除部分依赖,我们需要新建一个主键为A的表,把D拿出来放在新表中。
确保所有非主属性完全依赖于主键。

第三,在二范式的基础上,消除非主属性对主键的传递依赖。
例子↓
表有属性A,B,C
主键A
B依赖于A,C依赖于B。
这样就需要把C拿出来放进主键为B的表中,确保表的所有非主属性都唯一依赖于主键。

三个范式主要是为了消除数据冗余(即每一行出现太多重复的值)。

如果有错误的地方,欢迎指出批评,感谢。

更实际和具体的例子 → https://mp.weixin.qq.com/s/wyt-0y3lEhewa2cpeILYSQ

更详细的解释 → https://blog.csdn.net/chenyyhh92/article/details/51174343r

你可能感兴趣的:(数据库三范式)