mysql数据库之三范式

三范式(Third Normal Form,3NF)是关系数据库设计中的一种规范化方式,旨在消除冗余数据并保持数据的一致性和完整性。

三范式的设计原则如下:

  1. 第一范式(1NF):关系表中的每个字段必须是原子值,即不能再拆分成更小的单元。

(不能有多重的数据)

  1. 第二范式(2NF):关系表中的非关键字字段必须完全依赖于关键字字段。如果一个字段只依赖于关键字的一部分,就需要将该字段拆分成另一个表。

采用联合主键的方式确定每一条记录

  1. 第三范式(3NF):关系表中的非关键字字段不能相互依赖。如果一个字段依赖于另一个非关键字字段,则需要将其拆分成另一个表。

A能推断出B,B能推断出C,A能推断出C,不满足

通过遵循三范式,可以减少数据冗余,提高数据的一致性和完整性,简化查询操作,并提高数据库性能。然而,过度的范式化也可能导致查询复杂性增加,因此在实际设计中需要根据具体需求进行权衡和取舍。

相关推荐
十八旬1 小时前
苍穹外卖项目实战(day-5完整版)-记录实战教程及问题的解决方法
java·开发语言·spring boot·redis·mysql
青鱼入云2 小时前
java面试中经常会问到的mysql问题有哪些(基础版)
java·mysql·面试
送秋三十五2 小时前
MySQL DBA需要掌握的 7 个问题
数据库·mysql·dba
jnrjian2 小时前
v$lock TS lock id1 用于发现Oracle pdb不能关闭的sid
sql·oracle
睡觉的时候不会困2 小时前
MySQL 高可用方案之 MHA 架构搭建与实践
数据库·mysql·架构
kyle~2 小时前
Qt---对话框QDialog
数据库·qt·microsoft
GBASE2 小时前
“G”术时刻:南大通用GBase 8c数据库权限管理场景实践(三)
数据库
GottdesKrieges3 小时前
OceanBase系统日志管理
数据库·oracle·oceanbase
l5657584 小时前
第五十四天(SQL注入&数据类型&参数格式&JSON&XML&编码加密&符号闭合&复盘报告)
sql
小嵌同学4 小时前
Linux:malloc背后的实现细节
大数据·linux·数据库