2nf or 3nf 是最多的!应为你必须结合你的业务,你的需求,有时为了检索速度,也要牺牲冗余度

解决方案 »

  1.   

    1nf:是基础和基本的
    2nf和3nf:一般是经常使用的
    4nf:也有使用的。
    理论的东西,在实际使用时,也要根据你的具体的需要。
    有时是牺牲空间来获取时间,而有时又是为了节省空间而牺牲点时间,主要看重点和关键点在那一方面。
      

  2.   


        所谓范式就是符合某一种级别的关系模式的集合。通过分解把属于低级范式的关系模式转换为几个属于高级范式的关系模式的集合。这一过程称为规范化。1、  第一范式(1NF):一个关系模式R的所有属性都是不可分的基本数据项。
    2、  第二范式(2NF):关系模式R属于第一范式,且每个非主属性都完全函数依赖于键码。
    3、  第三范式(3NF):关系模式R属于第一范式,且每个非主属性都不伟递领带于键码。
    4、  BC范式(BCNF):关系模式R属于第一范式,且每个属性都不传递依赖于键码。
    不到第一范式:
      create 学生(姓名,性别年龄)  ----(因为性别年龄列包括了两个属性)
    第一范式不到第二范式:
      create 学生(姓名,性别,年龄,语文老师名) --(因为老师列不是完全函数依赖于键码)
    第二范式不到第三范式
      create 学生(姓名,性别,年龄,语文老师id,数学老师id)
      create 老师(老师id,老师名,老师年龄)
    第三范式不到第四范式
      create 学生(学生id,姓名,性别,年龄,籍贯)
      create 关系表(学生id,老师id)
      create 老师(老师id,老师名,老师年龄,籍贯)
    第四范式
      create 学生(学生id,姓名,性别,年龄,籍贯id)
      create 关系表(学生id,老师id)
      create 老师(老师id,老师名,老师年龄,籍贯id)
      cteate 籍贯表(id,籍贯)