范式
1)1NF:无重复的列
数据库表的每一列都是不可分割的基本数据项。
2)2NF:非主属性完全依赖于主键
消除部分子函数依赖。整个主键完全决定非主属性,而不能由主键的一部分来决定。
3)3NF:属性不依赖于其它非主属性
消除传递依赖
4)BCNF:3NF的改过
每个属性都不传递依赖于候选键
5)结论
满足范式要求的数据库设计是结构清晰的,同时可避免数据冗余和操作异常。这并意味着不符合范式要求的设计一定是错误的,在数据库表中存在1:1或1:N关系这种较特殊的情况下,合并导致的不符合范式要求反而是合理的。
- 作者:水岩
- 出处:http://www.cnblogs.com/waterystone
- 本博客中未标明转载的文章归作者水岩和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
如果您觉得本文对您的学习有所帮助,可通过支付宝(左) 或者 微信(右) 来打赏博主,增加博主的写作动力
![](https://images.cnblogs.com/cnblogs_com/waterystone/1457939/t_%E6%94%AF%E4%BB%98%E5%AE%9D.png)
![](https://www.cnblogs.com/images/cnblogs_com/waterystone/1457939/t_%E5%BE%AE%E4%BF%A1.png)