数据库范式

数据库的范式:

第一范式(1NF):

数据表中的每一列都是不可分割的基本数据项,同一列不能有多个值,即实体中的某个属性不能有多个值或者不能有重复的属性。

不符合第一范式
符合第一范式

如上面的例子:第一个图中信息字段包含了家庭住址与联系电话两方面信息,因此需要将信息进行分开,改为家庭住址,联系电话存储,如果联系电话里面又包含手机与座机,也要分开记录。第一范式就是为了保证每一列的原子性,使每一列都成为不可分割的最小数据单元。

第二范式(2NF):

满足1NF后,要求表中的所有列,都必须依赖于主键,而不能有任何一列与主键没有关系,也就是说一个表只描述一件事情。

不满足第二范式

上图例子中的学校地址不完全依赖于学生主键,因此不满足第二范式,应该将此表分为两个:学生表与学校表。第二范式就是保证数据满足第一范式的情况下,除了主键以外的其他列都依赖于主键。

第三范式(3NF):

满足2NF后,表中的每一列都与主键直接相关。

满足第三范式

学生的联系电话不依赖于家庭住址的传递,与主键直接有关。







个人公号:【排骨肉段】,可以关注一下。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 数据库范式,在大学里只要是计算机相关专业都应该学过,但是数据库范式这个词你理解吗?范式,可能说得艰涩了点,在繁体里...
    JennTu阅读 4,095评论 0 3
  • 再次强化数据库范式,别在犯迷糊: 大部分数据库从业人员都知道关系数据库有三个基本的范式,即:第一范式,第二范式,第...
    DesertSnow阅读 8,666评论 3 37
  • 概述 范式:英文名称是 Normal Form,它是英国人 E.F.Codd(关系数据库的老祖宗)在上个世纪70年...
    saviochen阅读 12,098评论 2 10
  • 简介数据库范式在数据库设计中的地位一直很暧昧,教科书中对于数据库范式倒是都给出了学术性的定义,但实际应用中范式的应...
    三三At你阅读 6,348评论 0 16
  • 1. 我胆子很小,也害怕争吵。 不敢走夜路,不敢看恐怖电影。 有阵子因为看了不到一集的美国恐怖片,导致两个星期不敢...
    八命先生阅读 8,973评论 20 74