【数据库范式】 分析题第一范式

1、第一范式1NF

定义:数据库表中的字段都是单一属性的,不可再分。

简单的说,每一个属性都是原子项,不可分割。

 

1NF是关系模式应具备的最起码的条件,如果数据库设计不能满足第一范式,就不称为关系型数据库。也就是说,只要是关系型数据库,就一定满足第一范式。

 

我们先来看一张不符合1NF的表1-1

CardNo

StudentNo

StudentName

Sex

Department

CardCash

UserID

UserLevel

Time

001

021101

小明

教育学院,心理系,1

100

Operator

操作员

2011/10/030900

 

之所以说这张表不符合1NF,是因为DepartmentTime字段可以再分,所以应该更改为表1-2

CardNo

StudentNo

StudentName

Sex

Academy

Major

class

CardCash

UserID

UserLevel

Date

Time

001

021101

小明

教育学院

心理系

1

100

Operator

操作员

2011/10/03

09:00

 

--------------------------------

1.第一范式(确保每列保持原子性)

第一范式是最基本的范式。如果数据库表中的所有字段值都是不可分解的原子值,就说明该数据库表满足了第一范式。

第一范式的合理遵循需要根据系统的实际需求来定。比如某些数据库系统中需要用到“地址”这个属性,本来直接将“地址”属性设计成一个数据库表的字段就行。但是如果系统经常会访问“地址”属性中的“城市”部分,那么就非要将“地址”这个属性重新拆分为省份、城市、详细地址等多个部分进行存储,这样在对地址中某一部分操作的时候将非常方便。这样设计才算满足了数据库的第一范式,如下表所示。

上表所示的用户信息遵循了第一范式的要求,这样在对用户使用城市进行分类的时候就非常方便,也提高了数据库的性能。

 

 

 

显然第一个表结构不但不能满足足够多物品的要求,还会在物品少时产生冗余。也是不符合第一范式的。

 

posted on 2015-07-16 19:37  viewcozy  阅读(543)  评论(0编辑  收藏  举报