zoukankan      html  css  js  c++  java
  • MySQL优化(三) 表的设计

    1、什么样的表才符合3范式(3 NF)?

    表的范式,是首先符合1范式,才能满足2范式,进一步才能满足3范式;(现在最高级别是6范式)

    第一范式:1NF 是对属性的原子性约束,要求表的属性(列)具有原子性,不可再分解;(只要是关系型数据库[mysql/oracle/db2/sql server/sysbase等]都满足1NF)

    第二范式:2NF 是对记录的唯一性约束,即表中的记录是唯一的,通过给表设置一个主键(不包含业务逻辑,一般是自增的);

    第三范式:3NF 是表中不包含冗余数据,就是说表的信息能被推导出来,就不应该单独的设计一个字段来存放;比如下面的设计就不满足 3NF:

    有时候设计表会反三范式,来提高效率;在表的1 对 N 的情况下,为了提高效率,可能会在 1 这边表中增加冗余字段。例子如下:

    统计学生参加哪些单位的活动

  • 相关阅读:
    javascript之理解参数按值传递
    javascript之模仿jQuery实现框架雏形
    javascript之正则表达式学习笔记
    python常用算法了解
    爬虫_小结04
    爬虫_小结03
    爬虫_小结02
    爬虫_小结01
    IO 模型
    数据库,前端和框架须知
  • 原文地址:https://www.cnblogs.com/yufeng218/p/10023976.html
Copyright © 2011-2022 走看看