zoukankan      html  css  js  c++  java
  • 数据库一、二、三范式

    第一范式:不存在重复的列,即数据库表的每一列都是不可分割的原子数据项。

    eg:不符合第一范式如下表

    学号 姓名 班级
    01 张三 高三1班

    应该转换成如下:(高三1班可以拆分成高三年级和1班)

    学号     姓名     年级     班级    
    01 张三 高三 1班

    第二范式:属性完全依赖于主键(满足第一范式的前提下),即任意一个字段只依赖于表中的同一个字段。

    eg:不符合第二范式如下表:

    学号     姓名     年龄     商品编号     商品名称    

    应该转换成如下两张表:(商品信息不依赖于学号)

                            学生信息表

    学号 姓名 年龄

                            商品信息表

    商品编号 商品名称

    第三范式:属性不能传递依赖于主属性(满足第二范式的前提下),即如果某属性依赖该表其他非主键属性,而其他非主键属性依赖于主键,那么这个属性就是间接依赖主键,这就叫传递依赖于主属性。

    eg:不符合第三范式如下表:

    爸爸 儿子 女儿 女儿的小猫 女儿的布娃娃  

    应该转换成如下两张表:

                          爸爸信息表

    爸爸 儿子  女儿

                          女儿信息表

    女儿      女儿的小猫   女儿的布娃娃
  • 相关阅读:
    shell 时间循环
    t
    IntelliJ IDEA For Mac 快捷键
    JVM的默认参数
    qt不同模块使用多语言
    cocos2dx 实现gpu instancing
    so so.*.*
    Android开发-解决 AIDL 中找不到couldn't find import for class错误
    Android Watchdog源码简析--Based on Android 6.0.1
    View绘制流程--Based on kitkat
  • 原文地址:https://www.cnblogs.com/tangjian07/p/10662019.html
Copyright © 2011-2022 走看看