mysql范式与反范式_MySQL 三种范式以及反范式 | 剑花烟雨江南
第一范式
确保数据表中每列(字段)的原子性,即每个字段都是最小单位,不可拆分。
如:用户表(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 三种范式以及反范式 | 剑花烟雨江南相关推荐
- java范式_【java编程】三种非主流的编程范式?
原标题:[java编程]三种非主流的编程范式? [Java培训]:的小编在一些平台上看到的高端的编程技巧,今天给大家介绍相应的三种编程范式,在编程中就提到了提到了不少小众语言,在这里小编希望借此让大家 ...
- mysql varchar,bigint,char三种类型性能的比较
mysql varchar,bigint,char三种类型性能的比较 比较数据类型的性能好坏,数据表必须有足够的数据,我用25万条数据做测试 字段是手机号,用这三个类型哪个类型好呢.首先分析手机号有1 ...
- MySQL 8.0 异步复制的三种方式
本实验中分别针对空库.脱机.联机三种方式,配置一主两从的mysql标准异步复制.只做整服务器级别的复制,不考虑对个别库表或使用过滤复制的情况. 实验环境 [root@slave2 ~]# cat /e ...
- 整洁架构之道--三种经典的编程范式
本文是<Clean Architecture>--整洁架构之道中关于编程范式相关章节的笔记,首发于公众号「Go 招聘」 前言 之前整理了整洁架构之道这本书前两章节的读书笔记:<cle ...
- mysql 避免重复添加_MySql三种避免重复插入数据的方法
前言 MySql 在存在主键冲突或唯一键冲突的情况下,根据插入方式,一般有以下三种插入方式避免错误. insert ignore. replace into insert on duplicate k ...
- mysql重复上一行的快捷_MySql三种避免重复插入数据的方法
前言 MySql 在存在主键冲突或唯一键冲突的情况下,根据插入方式,一般有以下三种插入方式避免错误. insert ignore. replace into insert on duplicate k ...
- mysql锁级别_MySql三种级别锁的介绍及解锁命令
MySql三种级别锁的介绍及解锁命令 (2014-04-29 11:59:37) 标签: 那末 用以 便能 页级的典型代表引擎为BDB. 表级的典型代表引擎为MyISAM,MEMORY和很久之前的IS ...
- 3种mysql的储存机制_MySQL三种InnoDB、MyISAM和MEMORY存储引擎对比
三种引擎的区别: 事务:InnoDB支持事务,MyISAM和MEMORY两个不支持. 存储限制:InnoDB有64TB的存储限制,MyISAM和MEMORY要跟具体情况而定. 空间使用:InnoDB对 ...
- MySQL数据库修改数据库名的三种方式
在Innodb数据库引擎下修改数据库名的方式与MyISAM引擎下修改数据库的方式完全不一样,如果是MyISAM可以直接去数据库目录中mv就可以,Innodb如果用同样的方法修改会提示相关表不存在. 第 ...
- 【Python】图像反转/反色的三种方法(pillow)
引言 图像反转(反色)是将图像的灰度值反转,若图像灰度级为 256,则新图的灰度值为 255 减去原图的灰度值.本文介绍了使用 Python 的 pillow 库进行图像反转(反色)的三种方法. 安装 ...
最新文章
- markdown测试
- PHOTOSHOP常用快捷键了
- HDU 2686 多线程DP
- 夺命雷公狗—angularjs—15—内置封装好的计时器$interval和$timeout
- HTTP协议--请求与响应
- Hadoop原理——HDFS原理
- jad反编译成java_反编译工具jad的使用(将*.class文件变成*.java文件,附带jad.zip包)[转]...
- uicontrol_与UIControl结合
- 2017VS2018年非工作日日期大集合
- 网线断了也能上网?被限速?
- 16福师硬盘是计算机的,福师16春《计算机应用基础》在线作业一
- mac 重启php-fpm
- 愿世界没有技术面全是Hr面
- stata软件不出图_stata 如何导出绘制的图?
- c 语言 图片大小,ABCDEFG罩杯有多大啊,最好能用数字和语言或者图片来形容下,? 爱问知识人...
- 苹果闪存性能测试软件,iPhone 12 Pro性能测试,再次秒杀所有!
- 腾讯企业邮箱单点登录 php,新版QQ企业邮箱接口PHP SDK
- Windows安装TensorFlow教程(国内源安装附上各大镜像网站网址)
- .net 程序访问数据库之异常SqlException (0x80131904)
- php视频点播系统,PHPvod 视频点播系统 v3.1 for php5.4.x
热门文章
- Kubernetes 将何去何从?
- TPC-C中跑赢Oracle的OceanBase,最近有何惊艳?
- 5G 比 4G 快,不只是因为......
- 效率提升,英特尔助力企业驶入“快车道”
- vue 利用hash值实现刷新无跳转页面
- matlab中patch命令_matlab中patch函数的用法——emily
- 禁止访问 共享计算机,win7如何禁止局域网用户访问电脑
- VS Code 批量操作
- java通过HTTPS协议POST提交接收JSON格式数据
- 怎么添加一个程序集_门店小程序,微信小程序怎么添加店铺