三范式,面试重点

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

第一范式:

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

第二范式

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

第三范式

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

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

  • 在实际开发中,以满足客户的需求为主,有的时候会拿冗余换执行速度(说出这个是加分),三范式只是理论
相关推荐
2301_772093561 分钟前
tuchuang_后端_前端_注册登录
数据库·后端·网络协议·mysql·wireshark
武子康17 分钟前
Java-141 深入浅出 MySQL Spring事务失效的常见场景与解决方案详解(3)
java·数据库·mysql·spring·性能优化·系统架构·事务
间彧20 分钟前
脏读、不可重复读、幻读详解与对比
数据库
间彧31 分钟前
数据库事务隔离级别详解
数据库
fwerfv3453451 小时前
使用PyTorch构建你的第一个神经网络
jvm·数据库·python
编程充电站pro3 小时前
面试陷阱:SQL 子查询 vs JOIN 的性能差异
数据库·sql
_OP_CHEN3 小时前
C++基础:(八)STL简介
开发语言·c++·面试·stl
中文Python3 小时前
小白中文Python-db_桌面小黄鸭宠物
数据库·python·pygame·宠物·中文python·小白学python
李慕婉学姐3 小时前
【开题答辩过程】以《基于 Spring Boot 的宠物应急救援系统设计与实现》为例,不会开题答辩的可以进来看看
数据库·spring boot·宠物
倔强的石头_4 小时前
【金仓数据库】ksql 指南(二) —— 创建与管理本地数据库
数据库