当前位置:   article > 正文

数据库中表的设计遵循的设计规范:三大范式_表设计遵循的范式

表设计遵循的范式

1.第一范式(1NF)

原子性:强调的是列的原子性,即数据库中每一列的字段都是单一属性,不可再分的。并且这个单一属性必须是由基本的数据类型所构成的,如整数、字符串等。

users表

上面表中address字段,可以按照省、市、区进行分割,因此不满足第一范式。

解决办法:将一个字段分割成多个字段

2.第二范式(2NF)

依赖性:在满足1NF的基础上再满足依赖性的两个约束:一张表必须有一个主键;非主键类必须完全依赖于主键。

用户表users

 

上面表中uid可以作为users表的主键,username,password,tel都依赖于uid,但是 role字段不依赖于uid.解决办法:将一张表拆分成多张表

用户表users

 

 角色表 roles

 

 

拆分完成后,将关联关系放在多方上。

3.第三范式(3NF) 在满足2NF的基础上,另外再满足一个条件:非主键列必须直接依赖于主键,不能存在传递依赖。

选课表 sc

 sname,cname,tname,credit,score都不依赖于scid,因此,要进行表的拆分。

选课表 sc

 

 学生表students

 课程表class

 老师表teacher

 

 多对多的解决办法: 创建一张新表:T_C

 E-R图:

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/在线问答5/article/detail/737756
推荐阅读
相关标签
  

闽ICP备14008679号