MySQL开发01-数据库范式

文章目录

  • 1、范式
    • 1.1、什么是数据库规范化
    • 1.2、什么是数据库范式
  • 2、总结

1、范式

1.1、什么是数据库规范化

  1. 数据规范化通常是将大表分成较小的表,并且定义它们之间的关系。这样做的目的是为了避免冗余存放数据,并确保数据的一致性。添加、删除和修改数据等操作可能需要修改多个表,但只需要修改一个地方即可保证所有表中相关数据的一致性(由于数据没有冗余存放,修改某部分数据一般只需要修改一个表即可)。由于数据分布在多个表之间,因此检索信息可能需要根据表之间的关系联合查询多个表。
  2. 数据规范化的实质是简单写、复杂读。写入操作比较简单,对于不同的信息,分别修改不同的表即可;而读取数据则相对复杂,检索数据的时候,可能需要编写复杂的SQL来联合查询多个表。

1.2、什么是数据库范式

  1. 范式是数据库规范化的一个手段,是数据库设计中的一系列原理和技术,用于减少数据库中的数据冗余,并增进数据的一致性。
  2. 常用的范式有第一、第二、第三范式,通常来说,如果数据库表满足某一个层级的范式,那么它也满足前面所有层级的范式,比如,第三范式肯定满足第一、第二范式。如果一个关系数据库表的设计满足第三范式,通常可认为它是“范式化”的。
  3. 范式的好处是:使编程相对简单,数据量更小,更适合放入内存,更新更快,只需更新更少的数据。更少的冗余数据意味着更少地需要GROUP、DISTINCT之类的操作。不利之处是查询会变得更加复杂,查询时需要更多连接(JOIN)操作,一些可以复合索引的列由于范式化的需要被分布到了不同的表中,导致索引策略不佳。

2、总结

  1. 数据库范式是数据库规范化的一个手段,其实质是简单写、复杂读,即修改时只需修改很少的数据,但查询时可能需要做多表关联。

你可能感兴趣的:(MySQL开发,mysql,数据库,sql,服务器)