数据库设计中的范式规范

来源:互联网 发布:何以知之的以 编辑:程序博客网 时间:2024/05/22 18:55

主要内容:

  1. 数据库设计的要求
    简洁,结构清晰,减少冗余,节省存储空间。
  2. 第一范式
    要求单个表中每个列必须是原子列(每一列都是不可分割的最小数据单元体)列不存在重复属性,每个实体的属性也不存在多个数据项。
    注意:数据表的主键可以使用联合主键,避免重复属性的出现;对年龄属性来说,可以将一个人的年龄设置成出生日期,数据类型为Date型,可以通过日期之间的计算来获得年龄的大小。
  3. 第二范式
    第二范式是在满足第一范式的基础上,要求数据里的所有数据都要和该数据表的主键有完全的依赖关系。
  4. 第三范式
    第三范式是在满足第二范式的 基础上,每一个列主键列都直接依赖主键列,不依赖其他非主键列,即数据库中不能存在传递函数依赖关系;一个列的值不能依赖于其他列的值。
  5. 范式的优点
    范式化的数据库更新起来更加快;
    范式化后,只有很少的重复数据,只需要修改更少的数据;
    范式化的表更小,可以在内存中执行;
    很少的冗余数据,在查询的时候需要更少的distinct或者group by语句。