mysql数据库之三范式

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

三范式的设计原则如下:

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

(不能有多重的数据)

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

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

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

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

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

相关推荐
javachen__1 小时前
SpringBoot整合P6Spy实现全链路SQL监控
spring boot·后端·sql
星霜笔记2 小时前
Docker 部署 MariaDB+phpMyAdmin+Nextcloud 完整教程
运维·数据库·docker·容器·mariadb
poemyang6 小时前
十年大厂员工终明白:MySQL性能优化的尽头,是对B+树的极致理解
mysql·pagecache·顺序i/o·局部性原理·b tree·b+ tree
wyiyiyi7 小时前
【Web后端】Django、flask及其场景——以构建系统原型为例
前端·数据库·后端·python·django·flask
天宇_任8 小时前
Mysql数据库迁移到GaussDB注意事项
数据库·mysql·gaussdb
武昌库里写JAVA11 小时前
JAVA面试汇总(四)JVM(一)
java·vue.js·spring boot·sql·学习
xiep143833351011 小时前
Ubuntu 安装带证书的 etcd 集群
数据库·etcd
Java小白程序员12 小时前
Spring Framework:Java 开发的基石与 Spring 生态的起点
java·数据库·spring
老虎062712 小时前
数据库基础—SQL语句总结及在开发时
数据库·sql·oracle
爱掘金的土拨鼠14 小时前
国产化dm数据库锁表解锁
数据库