理解范式

理解范式

  1. 第一范式(1NF)
    1. 列不可分,强调原子性,如电话列可进行拆分,家庭电话、公司电话
  2. 第二范式(2NF)
    1. 满足 1NF
    2. 主键
    3. 非主键完全依赖于主键,不能部分依赖
  3. 第三范式(3NF)
    1. 满足 2NF
    2. 非主键列必须直接依赖于主键,不存在传递依赖

范式作用

  1. 属性不可分 - 消除部分依赖 - 消除传递依赖

概况

  1. 确保每一列的原子性 (1NF)
  2. 非键字段必须依赖于键字段 (2NF)
  3. 任何非主属性不依赖于其它非主属性 (3NF)

依赖传递

  1. (学号) → (学生)→(所在学院) → (学院电话)
    拆分 :
    • 学生:(学号, 姓名, 年龄, 所在学院);
    • 学院:(学院, 电话)

完全依赖

  1. (订单编号 ,订购日期,产品编号,价格 )
    拆分
    1. 价格不完全依赖于(就是部分依赖)订单编号,价格可以由产品编号决定
    2. 订单表:(订单编号 ,订购日期 )
    3. 产品表: (产品编号,价格 )

猜你喜欢

转载自blog.csdn.net/ai_shuyingzhixia/article/details/82765310