数据库设计三大范式
什么事设计范式
设计表的依据,按照这个三范式设计的表不会出现数据冗余
三范式都有哪些
第一范式
第一范式:任何一张表都应该有主键,并且每一个字段原子性不可拆分
第二范式
多对多的关系.三张表,关系表两个外键
第二范式:建立在第一范式的基础之上,所有非主键字段完全依赖主键,不能产生部分依赖
第三范式
第三范式:建立在第二范式的基础之上,所有的非主键字段直接依赖主键,不能产生传递依赖.
一对多的关系.两张表,多(多方)的表加外键
班级t_class
cno(pk) cname
1 班级1
2 班级2
学生t_student
sno(pk) sname classno(fk)
1001 李1 1
1002 李2 1
1003 李3 2
1004 李4 2
在实际开发中,以满足客户需求为主,有时候会拿冗余换取执行速度
总结
- 第一范式必须要有主键,每个字段原子性不可拆分
- 第二范式不能产生依赖
- 第三范式不能产生传递依赖