zoukankan      html  css  js  c++  java
  • 数据库基础知识:数据库中的三大范式

    第一范式(1NF):

      数据表中的每一列(字段),必须是不可拆分的最小单元,也就是确保每一列的原子性。

    第二范式(2NF):

      确保表中的每列都和主键相关

      直白的说就是:所有数据必须都要依赖于主键。

           理解:程序中必须设置主键,一对多关系必须差分开,多对多也是一样。

                      也就是说在一个数据库表中,只能有一个主键,而且主键只能为一个字段

    第三范式(3NF):

      要求:表中的每一列都要与主键直接相关,而不是间接相关

                      非主键列必须直接依赖于主键,不能存在传递依赖。

    举例:

    学生表(学号,姓名,班级,年龄,性别,家庭所在市,家庭所在区,班主任姓名,班主任职称,所选课程号)

    这时候,班主任姓名依赖于学号,班主任职称依赖于班主任,间接依赖于学号,这就是传递依赖。应该变为。

    学生表(学号,姓名,班级,年龄,性别,家庭所在市,家庭所在区,班主任编号,所选课程号)

    教师表(教师编号,姓名,职称)

  • 相关阅读:
    20171012
    BZOJ[2563] 阿狸和桃子的游戏
    BZOJ[1028] [JSOI2007]麻将
    BZOJ[1972] [Sdoi2010]猪国杀
    BZOJ[1033] [ZJOI2008] 杀蚂蚁antbuster
    P5651 基础最短路练习题
    P3047 [USACO12FEB]Nearby Cows G
    P6190 魔法
    P2391 白雪皑皑 / BZOJ 2054 疯狂的馒头
    CSP 2020 J/S 初赛游记
  • 原文地址:https://www.cnblogs.com/zhanghanwen16/p/8514849.html
Copyright © 2011-2022 走看看