三范式,面试重点

三范式都是拿来解决数据冗余的问题

第一范式:

表必须有主键,它确保表中的每一列都是原子性的,

第二范式

定义:数据库表必须满足第一范式,且表中的非主属性完全依赖于主键。非主属性是指除了主键之外的其他属性。完全依赖指的是非主属性只能由主键决定,而不能由主键的一部分来决定(不能部分依赖)
多对多关系?三张表,关系表

第三范式

定义:数据库表必须满足第二范式,且表中的非主属性不传递依赖于主键。传递依赖指的是某个非主属性依赖于另一个非主属性,而这个非主属性又依赖于主键。

一对多?两张表,多的表加外键

  • 在实际开发中,以满足客户的需求为主,有的时候会拿冗余换执行速度(说出这个是加分),三范式只是理论
相关推荐
weixin_5394467811 分钟前
Navicat Premium 17报缺少ODBC驱动
数据库
众人皆醒我独醉18 分钟前
AI 工作负载可观测性:DCGM + Prometheus + Grafana
面试·llm·gpu
西门老铁25 分钟前
JWT 是什么?三段式结构、签名原理与 6 个安全坑一次讲透
后端·面试
哦虎!32 分钟前
【数据库】事务
java·数据库·mysql
倔强的石头_1 小时前
时序数据库的难题不只在写入速度
数据库
gyx_这个杀手不太冷静1 小时前
高级前端开发职业规划(2026—2035)
前端·面试·agent
一只叫煤球的猫2 小时前
开个新坑,从头开始完整拆解 Spring AI 2.0 的源码
后端·面试·aigc
.道阻且长.2 小时前
8.LeetCode算法习题讲解--滑动窗口--长度最小的子数组
算法·leetcode·职场和发展
IT古董3 小时前
【WMS学习笔记系列】01-需求分析
大数据·数据库
zlinear数据采集卡3 小时前
数据采集卡从入门到精通(9):分辨率与精度——16位卡不等于1/65536的精度
开发语言·数据库·fpga开发·开源·c#