关于第一范式(1NF)、第二范式(2NF)、第三范式(3NF)、巴克斯范式(BCNF)以及第四范式(4NF)各自特点的简单总结
Posted on 2023-07-15 13:35 麦勒迪 阅读(204) 评论(0) 收藏 举报 来源 在初学者在学习数据库技术时,总绕不开1NF、2NF、3NF、BCNF以及4NF。书本对这些的描述就如天书一般难懂。以下是关于上述几种范式各自特点和区别的表格式总结,希望有初学者有帮助。不当之处,欢迎交流指正。
| 范式名称 | 特征 | 存在问题 |
|---|---|---|
| 1NF | 各属性不可再分 | 非主属性部分依赖于码 |
| 2NF | 解决1NF存在问题,非主属性完全依赖于码 | 非主属性传递依赖于码 |
| 3NF | 解决2NF问题,非主属性直接依赖于码 | 主属性部分或传递依赖于码 |
| BCNF | 解决3NF问题,主属性完全依赖于码 | 存在多值依赖 |
| 4NF | 解决BNCF问题,各属性间没有非平凡且非函数依赖的多值依赖 |
一般来说,如果只考虑函数依赖,规范化程度最高的是BCNF,也就是说,在数据库设计时,只要达到BCNF标准就可以了;在某些情况下如果要考虑多会依赖,则需要进一步优化到4NF。
对于一些专业名词(如主属性、码等),可自行参阅相关文章,在此不再赘述。
浙公网安备 33010602011771号