美文网首页
数据库三大范式

数据库三大范式

作者: ebook_sea | 来源:发表于2020-03-24 17:49 被阅读0次

在设计数据库或者更新数据库的过程中,我们往往需要考虑考虑数据库的范式,这样做的目的在于,首先可以消除修改异常,其次可以降低重复的数据,从而节省储存空间。

在了解数据库的三大范式之前,首先我们需要明确两个概念,部分依赖(partial dependency)和传递依赖(transitive dependency)。

部分依赖(partial dependency):某个属性只依赖主键的一部分。

传递依赖(transitive dependency):某个属性依赖于另一个不属于主键的属性。

了解这两个概念后我们就可以定义数据库的三大范式了。

第一范式(原子性):是针对于数据表的列的规范,即数据表的每一列都是不可分割的原子数据项,而不能是数组,集合,记录等非原子数据项。但是却可以存在部分依赖或传递依赖。

第二范式:在第一范式的基础上,要求非主键必须必须依赖全部主键数据。即不能存在部分依赖,可以允许有传递依赖。

第三范式:在第二范式的基础上,要求非主键属性不依赖与其他非主键属性,即部分依赖和传递依赖都不能存在。

下面可以通过一个例子来说明。

我们看到,这是一个满足第一范式的表的结构,它仍旧存在部分依赖和传递依赖。

我们将表进行拆分,这个时候表中只存在传递依赖,不存在部分依赖,满足第二范式。

最后我们将表进一步拆分,这个时候表的结构既没有了部分依赖,也不存在传递依赖,表结构符合第三范式。

相关文章

  • 数据库范式

    1. 什么是数据库范式?为什么要学习数据库范式? 数据库范式(database normal form):数据库表...

  • 范式

    数据库(第一范式,第二范式,第三范式)

  • (系列7)数据库

    MySQL 数据库概念 范式 范式是数据库设计规范,范式越高则数据库冗余越小,但查询也更复杂,一般只需满足第三范式...

  • 设计数据持久层(上):理论分析

    关系数据库 关系 事务 数据库范式 第一范式(1 NF): 第一范式要求每个属性值都是不可再分的。 第二范式(2 ...

  • 57、【数据库技术】【MySQL】数据库范式

    1、概述 数据库范式是关系型数据库理论中比较重要的概念。“范式”可以理解成是“规则”、“规范”,数据库范式就是设计...

  • 数据库范式概念解析(第一范式,第二范式,第三范式)

    再次强化数据库范式,别在犯迷糊: 大部分数据库从业人员都知道关系数据库有三个基本的范式,即:第一范式,第二范式,第...

  • MySQL数据库基础知识

    数据库三大设计范式 其实,目前的关系数据库有六种范式:第一范式(1NF)、第二范式(2NF)、第三范式(3NF)、...

  • python学习笔记-数据库07_高级操作_数据库设计

    数据库设计之三范式 范式:对设计数据库提出的一些规范,目前有迹可循的共有8中范式,一般遵循3范式即可。第一范式(1...

  • MySQL的多表间关系

    一、数据库三范式 1.1 第一范式:确保每列保持原子性 第一范式是最基本的范式。如果数据库表中的所有字段值都是不可...

  • 数据库四大范式

    参考来源 解释一下关系数据库的第一第二第三范式? 第一,二,三和四范式 数据库设计范式2——BC范式和第四范式 主...

网友评论

      本文标题:数据库三大范式

      本文链接:https://www.haomeiwen.com/subject/vppynctx.html