第一范式

确保数据表中每列(字段)的原子性,即每个字段都是最小单位,不可拆分。

如:用户表(user)中的 user_name,password,nick_name。

第二范式

在第一范式的基础上,保证表中的每列都与主键相关。

如果一个关系满足第一范式,并且除了主键外的其余字段都依赖于主键,则满足第二范式。

如:一个用户只有一个角色,而一个角色对于多个角色,可参考以下建表:

user 用户表:user_id,user_name,password,nick_name,role_id

role 角色表:role_id,role_name

第三范式

在第二范式的基础上,确保表中的列都与主键直接相关,而不是间接相关。

如:一个用户可以多个角色,一个角色也可以对应多个用户,可参考以下建表:

user 用户表:user_id,user_name,password,nick_name

role 角色表:role_id,role_name

user_role 中间表: id,role_id,user_id

像这样,通过中间表来建立用户表与角色表,且符合范式化的原则,就可以称为第三范式。

反范式

反范式指的是通过增加冗余或者重复的数据来数据库的读性能。

如:在上述 user_role 表中加入 role_name ,减少 join 次数。

mysql范式与反范式_MySQL 三种范式以及反范式 | 剑花烟雨江南相关推荐

  1. java范式_【java编程】三种非主流的编程范式?

    原标题:[java编程]三种非主流的编程范式? [Java培训]:的小编在一些平台上看到的高端的编程技巧,今天给大家介绍相应的三种编程范式,在编程中就提到了提到了不少小众语言,在这里小编希望借此让大家 ...

  2. mysql varchar,bigint,char三种类型性能的比较

    mysql varchar,bigint,char三种类型性能的比较 比较数据类型的性能好坏,数据表必须有足够的数据,我用25万条数据做测试 字段是手机号,用这三个类型哪个类型好呢.首先分析手机号有1 ...

  3. MySQL 8.0 异步复制的三种方式

    本实验中分别针对空库.脱机.联机三种方式,配置一主两从的mysql标准异步复制.只做整服务器级别的复制,不考虑对个别库表或使用过滤复制的情况. 实验环境 [root@slave2 ~]# cat /e ...

  4. 整洁架构之道--三种经典的编程范式

    本文是<Clean Architecture>--整洁架构之道中关于编程范式相关章节的笔记,首发于公众号「Go 招聘」 前言 之前整理了整洁架构之道这本书前两章节的读书笔记:<cle ...

  5. mysql 避免重复添加_MySql三种避免重复插入数据的方法

    前言 MySql 在存在主键冲突或唯一键冲突的情况下,根据插入方式,一般有以下三种插入方式避免错误. insert ignore. replace into insert on duplicate k ...

  6. mysql重复上一行的快捷_MySql三种避免重复插入数据的方法

    前言 MySql 在存在主键冲突或唯一键冲突的情况下,根据插入方式,一般有以下三种插入方式避免错误. insert ignore. replace into insert on duplicate k ...

  7. mysql锁级别_MySql三种级别锁的介绍及解锁命令

    MySql三种级别锁的介绍及解锁命令 (2014-04-29 11:59:37) 标签: 那末 用以 便能 页级的典型代表引擎为BDB. 表级的典型代表引擎为MyISAM,MEMORY和很久之前的IS ...

  8. 3种mysql的储存机制_MySQL三种InnoDB、MyISAM和MEMORY存储引擎对比

    三种引擎的区别: 事务:InnoDB支持事务,MyISAM和MEMORY两个不支持. 存储限制:InnoDB有64TB的存储限制,MyISAM和MEMORY要跟具体情况而定. 空间使用:InnoDB对 ...

  9. MySQL数据库修改数据库名的三种方式

    在Innodb数据库引擎下修改数据库名的方式与MyISAM引擎下修改数据库的方式完全不一样,如果是MyISAM可以直接去数据库目录中mv就可以,Innodb如果用同样的方法修改会提示相关表不存在. 第 ...

  10. 【Python】图像反转/反色的三种方法(pillow)

    引言 图像反转(反色)是将图像的灰度值反转,若图像灰度级为 256,则新图的灰度值为 255 减去原图的灰度值.本文介绍了使用 Python 的 pillow 库进行图像反转(反色)的三种方法. 安装 ...

最新文章

  1. markdown测试
  2. PHOTOSHOP常用快捷键了
  3. HDU 2686 多线程DP
  4. 夺命雷公狗—angularjs—15—内置封装好的计时器$interval和$timeout
  5. HTTP协议--请求与响应
  6. Hadoop原理——HDFS原理
  7. jad反编译成java_反编译工具jad的使用(将*.class文件变成*.java文件,附带jad.zip包)[转]...
  8. uicontrol_与UIControl结合
  9. 2017VS2018年非工作日日期大集合
  10. 网线断了也能上网?被限速?
  11. 16福师硬盘是计算机的,福师16春《计算机应用基础》在线作业一
  12. mac 重启php-fpm
  13. 愿世界没有技术面全是Hr面
  14. stata软件不出图_stata 如何导出绘制的图?
  15. c 语言 图片大小,ABCDEFG罩杯有多大啊,最好能用数字和语言或者图片来形容下,? 爱问知识人...
  16. 苹果闪存性能测试软件,iPhone 12 Pro性能测试,再次秒杀所有!
  17. 腾讯企业邮箱单点登录 php,新版QQ企业邮箱接口PHP SDK
  18. Windows安装TensorFlow教程(国内源安装附上各大镜像网站网址)
  19. .net 程序访问数据库之异常SqlException (0x80131904)
  20. php视频点播系统,PHPvod 视频点播系统 v3.1 for php5.4.x

热门文章

  1. Kubernetes 将何去何从?
  2. TPC-C中跑赢Oracle的OceanBase,最近有何惊艳?
  3. 5G 比 4G 快,不只是因为......
  4. 效率提升,英特尔助力企业驶入“快车道”
  5. vue 利用hash值实现刷新无跳转页面
  6. matlab中patch命令_matlab中patch函数的用法——emily
  7. 禁止访问 共享计算机,win7如何禁止局域网用户访问电脑
  8. VS Code 批量操作
  9. java通过HTTPS协议POST提交接收JSON格式数据
  10. 怎么添加一个程序集_门店小程序,微信小程序怎么添加店铺