Mysql范式设计原则介绍

1.第一范式

定义:数据表中每个字段的值必须具有原子性(不可以再次拆分)

错误示例:

用户ID、用户名、用户密码、用户信息这几个字段中,用户信息就不符合第一范式的设计原则。

2.第二范式

定义:在第一范式的基础中,确保数据表中除主键之外的每个字段都依赖主键

错误示例:

商品类别主键id(字段名)

商品类别名称(字段名)

商品名称(字段名)

商品价格(字段名)

上述蓝色字段不符合第二范式定义,商品名称和商品价格并不依赖于商品类别主键id。可以拆分成如下设计

正确示例:

表1:

商品类别主键id

商品类别名称

表2:

商品主键id

商品类别id

商品名称

商品价格

3.第三范式

定义:第三范式是在第二范式的基础上,确保数据表中的每一列都和主键字段直接相关,也就是说,要求数据表中的所有非主键字段不能依赖于其他非主键字段

4.反范式化

定义:数据库中数据量巨大,访问频次高,如果按照三大范式设计数据库表,会产生大量关联查询。会影响数据库的读性能。采用反范式化给数据库表增加冗余字段来解决这个问题。

相关推荐
molaoye2 小时前
win10下安装MySQL 8.0.*实录
数据库·mysql
千舟软件2 小时前
千舟软件介绍 | 顺便聊聊我们做了哪些产品
大数据·数据库·科技·小程序·业界资讯
番茄炒鸡蛋加糖2 小时前
中级核心技术1--MySQL/Java 并发
java·数据库·mysql
戴西软件3 小时前
戴西CAxWorks.VPG车辆工程仿真软件技术解析(上)——安全仿真体系的自动化构建
运维·网络·数据库·人工智能·算法·安全·自动化
灯澜忆梦4 小时前
【MySQL10】进阶篇 | 索引_#1
数据库·sql·mysql
敲上瘾4 小时前
redis常用数据类型与操作方法
数据结构·数据库·redis·缓存
OceanWaves19934 小时前
mysql 5.7.29 主从同步配置
数据库·mysql·adb
molaoye4 小时前
win10下切换MySQL版本
数据库·mysql
丁引5 小时前
《数据清洗的艺术:如何用20行核心逻辑优雅地删除无标签图片》
前端·数据库·python
雨辰AI5 小时前
K8s 数据库 Secret 加密实战|密码明文漏洞彻底修复,等保密评双合规(金仓 / 达梦双库适配)
数据库·容器·kubernetes