数据库|数据库范式(待完成)

文章目录

  • 数据库的范式
    • 数据库的基本操作
    • 什么是数据库的范式
      • 产生的背景(没有规范化的坏处/带来的问题)
      • 规范化表格设计的要求
      • 五大范式的作用——树立标准
        • 打个比方——桥的承载能力
        • 1NF(1范式)
          • 如何转换成合适的一范式
        • 2NF(2范式)
  • 其他
    • 数据在数据库中存放的位置

数据库的范式

数据库的基本操作


数据库的一般操作是通过SET是对数据进行设置,同时用GET去获得存放在数据库中的信息。

什么是数据库的范式

产生的背景(没有规范化的坏处/带来的问题)



规范化表格设计的要求

  1. 一是要使得数据库易于理解(易于理解才方便在使用过程中快速上手)
  2. 易于增强和扩展(在现实开发场景中,往往会有临时的业务增加)
  3. 安全性(能够避免一些操作引起的错误,比如一些账户被删除后,相关的数据仍留在数据库中)

五大范式的作用——树立标准


为了达到相关的要求,就要考虑去设计数据库的规范。而规范是有质量之分,进一步可以用五大范式去衡量规范的结果。

打个比方——桥的承载能力

承重/安全等级 目标
安全等级1(1NF) 能够允许人们走过
安全等级2(1NF) 能够让小轿车通过
安全等级3(3NF) 能够让大卡车通过
安全等级4(4NF) 能够让坦克通过
安全等级5(5NF) 能够让火车通过
1NF(1范式)


1NF范式使用主键使得避免出现重复键的情况(有主客体区分)。
比如说John的数据项只能有一个,不能够出现多个。(比如John身高179和身高158同时出现)

如何转换成合适的一范式


数据库如果这么设计的话,如果要查询某个玩家拥有某个东西的数量。
则需要整个Inventory拿下来,将整个字符串从头扫到尾,将对应需要的物体及其前面的数量识别出来。
于是,需要由前端人员自行进一步处理。
那其实,可以将Inventory进一步拆分成一个个的项。那如果拆成的项有很多呢?

将会产生很多空格。

2NF(2范式)

其他

数据在数据库中存放的位置

数据库|数据库范式(待完成)_第1张图片
有些数据库软件会将数据库存放在全部存放在外存/磁盘,每次使用都得从外存调换到内存中,从而增加时间的损耗。
而有些数据库软件会将数据库部分存放在内存中,从而加快对数据的调用。但这会产生一个问题,就是由于内存的空间相对外存是较小,且内存不完全是为了数据库服务的,所以存放在内存中的数据库,而如果是将存放在磁盘的数据和存放在内存的数据进行合并的话,将无法直接在内存中进行完成。
比如说join操作。

在 SQL 中,JOIN是用于将多个表中的数据连接在一起的操作。它通过指定连接条件将两个或多个表中符合条件的行组合起来,产生一个新的结果集

SELECT 列名 FROM 表1 INNER JOIN 表2 ON 连接条件;

你可能感兴趣的:(数据库,数据库)