【SQL】浅谈范式

举报
Laura_张 发表于 2022/08/27 00:01:31 2022/08/27
【摘要】 前言 范式的定义是“符合某一种级别的关系模式的集合,表示一个关系内部各属性之间的联系的合理化程度”。简单来说就是数据库中创建数据表的规则。 范式的目标是降低所浪费的空间量和数据冗余量。 正文 目前的关系数据库中一共有六个范式,但是一般的数据库只需要前三个范式就足够了。   第一范式(1NF) 定义所需要的数据项;...

前言

范式的定义是“符合某一种级别的关系模式的集合,表示一个关系内部各属性之间的联系的合理化程度”。简单来说就是数据库中创建数据表的规则。

范式的目标是降低所浪费的空间量和数据冗余量。

正文

目前的关系数据库中一共有六个范式,但是一般的数据库只需要前三个范式就足够了。

 

第一范式(1NF)

定义所需要的数据项;确保没有重复的数据组;确保存在一个主键

第二范式(2BF)

在第一范式的基础上要求:主键中任意列没有局部相关性。

第三范式(3NF)

所有非主键字段都依赖于主键;符合第二范式。

BCNF

所有非主属性都完全依赖于每个候选码;所有的主属性都完全依赖于每个不包含它的候选码;没有任何属性完全函数依赖于非码的任何一组属性。

第五范式(4NF)

限制关系模式的属性之间不允许有非平凡且非函数依赖的多值依赖。

第六范式(5NF)

消除了4NF中的连接依赖。


结尾

范式是层层递进的,第六范式是最终范式,一般的数据库只需要满足前三个范式就足够了。想要真正的了解范式,还得去实际操作。

参考文献:https://baike.so.com/doc/6298095-7588792.html

文章来源: blog.csdn.net,作者:张艳伟_Laura,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/Laura__zhang/article/details/90813038

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。