数据库的三范式是什么?

  1. 第一范式:强调的是列的原子性,即数据库表的每一列都是不可分割的原子数据项;

  2. 第二范式:要求实体的属性完全依赖于主关键字。所谓完全依赖是指不能存在仅依赖主关键字一部分的属性;

  3. 第三范式:任何非主属性不依赖于其它非主属性。

发表评论

后才能评论

评论(4)

  • mpweixin用户 普通 2022-02-17 11:46 上午

    对象拆分的好,基本上就满足三大范式了。
    第一范式,字段不可拆分,原子性
    第二范式,联合主键情况,字段都应与主键有关联。如成绩表,主键学生id,学科id,不应该出现学生班级信息之类的字段。
    第三范式,表不包含多余属性,学生属性属于学生,班级属性属于班级。

  • 火箭少女宋小宝🧚 普通 2021-11-19 6:13 下午

    1NF:关系中每一分量不可再分。即不能以集合、序列等作为属性。(也就是不能表中套表,要保证数据的原子性。)

    2NF:在1NF基础上,消除非主属性对键的部分依赖,则称它符合2NF。

    3NF:在2NF基础上,消除非主属性对键的传递依赖,则称它符合3NF。

    BCNF:对于关系模式R,如果每一个函数依赖的决定因素都包含键,则R属于BCNF范式。

    • BCNF:在3NF基础上,消除主属性对键的部份依赖和传递依赖,(是对第三范式的扩充)
      1.非主属性对对候选码的依赖必须全都是完全依赖
      2.所有主属性对每一个不包含它的码也是完全依赖
      3.没有任何属性完全依赖于非码的任何一组属性

      如果达到了BCFN基本就可以消除数据库的数据冗余,插入异常,删除异常,更新复杂的问题