【滑稽】每日一记 数据库基础

数据库设计三大范式:
第一范式:1NF 数据表中的每一列(字段),必须是不可拆分的最小单元,也就是确保每一列的原子性

第二范式:2NF 满足1NF后,要求表中所有列必须依赖于主键,而不能有任何一列与主键没有关系;一个表只描述一件事情

例: 订单表,只能描述订单相关的信息,所以所有的字段必须与订单ID相关;
产品表,只能描述产品相关的信息,所以所有的字段必须与产品ID相关;

 

第三范式:3NF 满足2NF后,要求表中的每一列都要与主键直接相关,而不是间接相关;表中的每一列,只能依赖于主键
例: 订单表中,需要有客户相关信息,在分离出客户表之后。
订单表中,只需要有一个用户ID即可。而不能有其他的客户信息。

因为,其他的用户信息是直接关联与用户ID,而不是关联与订单ID。

 

第二范式与第三范式的本质区别:在于有没有分出两张表,第二范式是一张表中包含了多种不同实体的属性,那么必须分成多张表
第三范式要求已经分好了多张表的话,那么一张表中只能有另一张表的ID(主键)而不能有其他的任何信息,其他信息通过主键在其他表中查询

 

posted @ 2017-06-15 18:11  瓜皮猴  阅读(119)  评论(0)    收藏  举报