广告
返回顶部
首页 > 资讯 > 数据库 >Mysql中范式和反范式的优缺点
  • 308
分享到

Mysql中范式和反范式的优缺点

2024-04-02 19:04:59 308人浏览 安东尼
摘要

今天就跟大家聊聊有关Mysql中范式和反范式的优缺点,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。一、三大范式第一范式1NF是对属性的原子性,要求属

今天就跟大家聊聊有关Mysql中范式和反范式的优缺点,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

一、三大范式

第一范式

1NF是对属性的原子性,要求属性具有原子性,不可再分解;

第一范式是最基本的范式。如果数据库表中的所有字段值都是不可分解的原子值,就说明该数据库表满足了第一范式。数据库表的每一列都是不可分割的原子数据项,而不能是集合数组,记录等非原子数据项。简而言之,第一范式就是无重复的域。

第二范式

2NF是对记录的惟一性,要求记录有惟一标识,即实体的惟一性,即不存在部分依赖;

满足第二范式必须先满足第一范式。第二范式需要确保数据库表中的每一列都和主键相关,而不能只与主键的某一部分相关(主要针对联合主键而言)。也就是说在一个数据库表中,一个表中只能保存一种数据,不可以把多种数据保存在同一张数据库表中。

第三范式

3NF是对字段的冗余性,要求任何字段不能由其他字段派生出来,它要求字段没有冗余,即不存在传递依赖;

首先是 2NF,另外非主键列必须直接依赖于主键,不能存在传递依赖。即不能存在:非主键列 A 依赖于非主键列 B,非主键列 B 依赖于主键的情况。简而言之,第三范式(3NF)要求一个关系中不包含已在其它关系已包含的非主关键字信息。例如,存在一个部门信息表,其中每个部门有部门编号(dept_id)、部门名称、部门简介等信息。那么在员工信息表中列出部门编号后就不能再将部门名称、部门简介等与部门有关的信息再加入员工信息表中。

范式的利弊:

优点:范式可以避免数据冗余,减少数据库的空间,减轻维护数据完整性的麻烦。

缺点:按照范式的规范设计出来的表,等级越高的范式设计出来的表越多。如第一范式可能设计出来的表可能只有一张表而已,再按照第二范式去设计这张表时就可能出来两张或更多张表,如果再按第三范式或更高的范式去设计这张表会出现更多比第二范式多 的表。表的数量越多,当我们去查询一些数据,必然要去多表中去查询数据,这样查询的时间要比在一张表中查询中所用的时间要高很多。也就是说我们所用的范式越高,对数据操作的性能越低。所以我们在利用范式设计表的时候,要根据具体的需求再去权衡是否使用更高范式去设计表。

二、反范式

故名思义,跟范式所要求的正好相反,在反范式的设计模式,我们可以允许适当的数据的冗余,用这个冗余去取操作数据时间的缩短。也就是用空间来换取时间,把数据冗余在多个表中,当查询时可以减少或者是避免表之间的关联。

反范式的利弊:

优点:查询时可以减少表的关联;可以更好的进行索引优化

缺点:存在数据冗余以及数据维护异常;对数据的修改需要更多的成本;

看完上述内容,你们对mysql中范式和反范式的优缺点有进一步的了解吗?如果还想了解更多相关内容,欢迎关注编程网数据库频道,感谢各位的阅读。

您可能感兴趣的文档:

--结束END--

本文标题: Mysql中范式和反范式的优缺点

本文链接: https://www.lsjlt.com/news/38396.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Mysql中范式和反范式的优缺点
    今天就跟大家聊聊有关Mysql中范式和反范式的优缺点,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。一、三大范式第一范式1NF是对属性的原子性,要求属...
    99+
    2022-10-18
  • Mysql范式与反范式的利弊是什么
    这篇文章主要讲解了“Mysql范式与反范式的利弊是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Mysql范式与反范式的利弊是什么”吧!   一、三大...
    99+
    2022-10-19
  • Mysql中的范式
    目录 范式定义 第一范式 第二范式 第三范式 反范式 范式定义 范式:Normal Format,是一种离散数学中的知识,是为了解决数据的存储与优化的问题:保存数据的存储之后,凡是能够通过关系寻找出来的数据,坚决不再重复存储,...
    99+
    2020-06-21
    Mysql中的范式
  • MySQL中binlog三种格式的优缺点是什么
    这篇文章将为大家详细讲解有关MySQL中binlog三种格式的优缺点是什么,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。 MySQL bin...
    99+
    2022-10-18
  • Mysql的链条式复制的优缺点是什么
    这篇文章主要介绍“Mysql的链条式复制的优缺点是什么”,在日常操作中,相信很多人在Mysql的链条式复制的优缺点是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Mysq...
    99+
    2022-10-18
  • Mybatis中xml和注解映射的方式和优缺点
    这篇文章主要介绍“Mybatis中xml和注解映射的方式和优缺点”,在日常操作中,相信很多人在Mybatis中xml和注解映射的方式和优缺点问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望...
    99+
    2022-10-19
  • MySQL InnoDB独立表空间模式的优点和缺点分别是什么
    这期内容当中小编将会给大家带来有关MySQL InnoDB独立表空间模式的优点和缺点分别是什么,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。 ...
    99+
    2022-10-19
  • php中FastCGI模式的优缺点有哪些
    这篇文章给大家分享的是有关php中FastCGI模式的优缺点有哪些的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。1、优点(1)从稳定性上看,FastCGI 模式是以独立的进程池来运行 CGI 协议程序,单独一个进...
    99+
    2023-06-15
  • MySQL的binlog的格式及优缺点分别是什么呢
    本篇文章给大家分享的是有关MySQL的binlog的格式及优缺点分别是什么呢,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。 ...
    99+
    2022-10-19
  • u盘改为ntfs格式的优点和缺点是什么
    这篇文章主要讲解了“u盘改为ntfs格式的优点和缺点是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“u盘改为ntfs格式的优点和缺点是什么”吧!u盘改为ntfs格式利与弊是:NTFS是一...
    99+
    2023-06-20
  • java中工厂模式的优缺点有哪些
    这篇文章将为大家详细讲解有关java中工厂模式的优缺点有哪些,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。简单工厂模式介绍:概要:  简单工厂模式,又称为静态工厂方法(Static Fact...
    99+
    2023-05-31
    java 工厂模式 ava
  • Java和Django的响应式框架:优缺点比较
    Java和Django是两个备受欢迎的Web开发框架,它们各自拥有自己的特点和优势。在响应式框架方面,Java和Django也有各自的实现。在本文中,我们将比较Java和Django的响应式框架,探讨它们的优缺点。 Java的响应式框架:S...
    99+
    2023-09-07
    django 响应 框架
  • 分布式系统中 Python 和 Javascript 的优缺点,你知道吗?
    随着云计算和大数据的兴起,分布式系统已经成为了现代计算的重要组成部分。分布式系统指的是一个由多台计算机组成的系统,这些计算机通过网络相互连接,共同协作完成任务。在分布式系统中,Python 和 Javascript 作为两种常用的编程语言...
    99+
    2023-06-19
    leetcode javascript 分布式
  • PHP中常用的路由方式及其优缺点
    在Web开发中,路由(Routing)是指根据URL地址来确定如何处理请求的过程。PHP作为一种流行的后台语言,拥有多种路由方式可以选择。在本文中,我们将介绍几种常用的PHP路由方式,并探讨它们的优缺点。基于查询字符串(Query Stri...
    99+
    2023-10-21
    路由 优缺点 关键词:PHP
  • Laravel 中的 PHP 分布式数组:优缺点分析
    在 Laravel 中,我们经常会用到 PHP 的数组。而在 PHP 中,有一个比较特殊的数组类型,那就是分布式数组。本文将介绍分布式数组的概念、优缺点以及在 Laravel 中的应用。 什么是分布式数组? 分布式数组是一种可以跨越多个 ...
    99+
    2023-09-02
    分布式 数组 laravel
  • 前端实时通信的8种方式及其优缺点和实现方式
    1.短轮询 短轮询的原理很简单,每隔一段时间客户端就发出一个请求,去获取服务器最新的数据,一定程度上模拟实现了即时通讯。 优点:兼容性强,实现非常简单缺点:延迟性高,请求中有大半是无...
    99+
    2022-11-13
  • JS中的六种继承方式以及优缺点总结
    目录前言原型链继承 构造函数继承 组合继承(原型链继承和构造函数继承组合) 寄生式继承 组合寄生式继承 extends继承 总结前言 继承是JS世界中必不可少的一个环节,号称JS的三...
    99+
    2022-11-12
  • 深入讲解JavaScript之继承的多种方式和优缺点
    目录1.原型链继承2.借用构造函数(经典继承)3.组合继承4.原型式继承5. 寄生式继承6. 寄生组合式继承1.原型链继承 function Parent () { th...
    99+
    2022-11-12
  • Go 框架和 NumPy:两种存储方式的优缺点分析?
    Go 框架和 NumPy:两种存储方式的优缺点分析 随着数据量的不断增大,数据存储和处理变得越来越重要。在数据存储方面,常用的两种方式是使用 Go 框架和 NumPy。本文将分析这两种存储方式的优缺点,并且演示一些相关的代码。 Go 框架 ...
    99+
    2023-08-15
    框架 numpy 存储
  • MySQL中varchar(10)和varchar(100)的区别和优缺点
    许多使用MySQL的同学都会使用到varchar这个数据类型。初学者刚开始学习varchar时,一定记得varchar是个变长的类型这个知识点,所以很多初学者在设计表时,就会把varchar(X)的长度设置的非常长,目的也是为了...
    99+
    2019-10-15
    MySQL中varchar(10)和varchar(100)的区别和优缺点
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作