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

数据库三大范式

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

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

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

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

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

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

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

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

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

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

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

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

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

    相关文章

      网友评论

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

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