优就业设计理论分享-数据库设计理论
课程导航
优就业设计理论分享-数据库设计理论报名
优就业设计理论分享-数据库设计理论新闻
优就业设计理论分享-数据库设计理论环境
热门课程:
400-666-4820
  • 学校新闻

优就业设计理论分享-数据库设计理论

*范式标准:

1)无重复的数据

2)每一列中的数据是都是原子数据

如下图的表中就不满足这两个条件,Customer数据重复了,ItemsOrderd 中不是原子数据(一列中有多组数据)。

优化方法:

1)新建Customer表和order表做主外键关联。

2)分拆ItemOrdered列,将有多组数据的行分成多行,并新建主键列,因为分拆多行后原OrderNo列已不能*标识一行数据了。

 

 

第二范式标准:

1. 符合*范式

2.每列必须依赖于整个键

如下表中 CustomerNo、PartNo 只依赖与 OrderNo 而不依赖于LineIitem. 像这种情况就需要将下面的订单表拆成订单主表(表头)与订单明细表。

通常明细表以表头名开头来名字,如这里的主表命名为Order,明细表命名为OrderDetails。

 

第三范式标准:

1.符合第二范式。

2.任何列都不能依赖与非键列。

3.不可以有派生数据。

以上图中的表为例,其中Description Wt 列就依赖于PartNo列。为解决此问题,应再拆表,新一个Product表(包含PartNo、Wt、Description、UnitPrice)。

注意这里出于业务考虑原表中的UnitPrice列应保留。