zoukankan      html  css  js  c++  java
  • 数据库三大范式最通俗解释

     

    第一范式

    • 列不能够再分

    这是不符合第一范式的(红色代表主键)——地址列可以再分

    学生表

    id 姓名 性别 地址
    001 闪客sun 中国,吉林,长春

    这是符合第一范式的

    学生表

    id 姓名 性别 国家 省份 城市
    001 闪客sun 中国 吉林 长春

    第二范式

    • 首先要符合第一范式
    • 表必须有主键
    • 非主键列不能只依赖于主键的一部分 

    这是不符合第二范式的(红色代表主键)---商品名称依赖了主键的一部分商品ID

    订单表

    订单ID 商品ID 商品名称
    001 251 直升机

    这是符合第二范式的

    订单表

    订单ID 商品ID
    001 251

    商品表

    商品ID 商品名称
    251 直升机

    第三范式

    • 首先满足第二范式
    • 非主键列必须直接依赖于主键,不能存在传递依赖

    这是不符合第一范式的(红色代表主键)——学校描述没有直接依赖于主键,而是直接依赖于学校,学校直接依赖于主键,所以存在传递依赖

    学生表

    id 姓名 学校 学校描述
    001 闪客sun 氢化大学 中国最牛逼的学校

    这是符合第一范式的

    学生表

    id 姓名 学校id
    001 闪客sun 001

    学校表

    id 名称 描述
    001 氢化大学 中国最牛逼的学校

    PS:本文仅帮助你理解三大范式,深入了解还需要咬定义和具体例子

  • 相关阅读:
    jquery两个滚动条样式
    js双层动画幻灯
    漂浮QQ
    js物理弹性窗口
    js抽奖跑马灯程序
    经典算法
    判断手机浏览器终端设备
    javascript判断手机旋转横屏竖屏
    【转】处理百万级以上的数据提高查询速度的方法
    Linux -- Centos 下配置LNAMP 服务器环境
  • 原文地址:https://www.cnblogs.com/jilly324/p/9267105.html
Copyright © 2011-2022 走看看