首页 理论教育 Access2016数据库中关系规范化的实用技巧

Access2016数据库中关系规范化的实用技巧

时间:2023-11-15 理论教育 版权反馈
【摘要】:关系数据库中的关系(表)要满足一定要求,满足不同程度要求的为不同范式。表1-20满足第一范式的出版社明细表如果一个关系的所有属性都是不可再分的基本数据项,则该关系满足第一范式。例1-13分析学生联系关系是否满足第三范式,如果不满足,加以优化使之满足。

Access2016数据库中关系规范化的实用技巧

关系数据库中的关系(表)要满足一定要求,满足不同程度要求的为不同范式。根据满足规范的条件不同,可以划分为5级,从第一范式[1NF(Normal Forms)]到第五范式(5NF),其中第一范式为最低级范式。

在实现一般的数据库应用时,通常只要把数据表规范到第三范式就可基本满足要求。

规范化设计的过程就是按不同的范式,将一个二维表不断地分解成多个二维表并建立表间的关联,最终达到一个表只描述一个实体或者实体间的一种联系。

1.第一范式(1NF)

第一范式是指数据库表的每一列都是不可再分割的基本数据项,同一列不能有多个值,即实体中的某个属性不能有多个值或者不能有重复的属性。如果出现重复的属性,就可能需要定义一个新的实体,新的实体由重复的属性构成,新实体与原实体之间为一对多关系。在第一范式中表的每一行只包含一个实例的信息。

简而言之,第一范式就是无重复的列。在任何一个关系数据库中,第一范式是对关系模型的基本要求,不满足第一范式的数据库就不是关系数据库。

例1-11 将表1-19“出版社明细表”规范为满足第一范式的表。

图1-17 参照完整性

表1-19 出版社明细表

满足第一范式的“出版社明细表”如表1-20所示。

表1-20 满足第一范式的出版社明细表

如果一个关系的所有属性都是不可再分的基本数据项,则该关系满足第一范式。第一范式是最低的规范化要求,是每个关系必须要满足的。

2.第二范式(2NF)

若关系模式R属于1NF,且每个非主属性都完全依赖于主键,则该关系模式属于2NF,2NF不允许关系模式中的非主属性部分依赖于主码。

第二范式是在第一范式的基础上建立起来的,即满足第二范式必须先满足第一范式。第二范式要求数据库表中的每个实例或行必须可以被唯一地区分。这个唯一属性列被称为主关键字或主键。

第二范式要求实体的属性完全依赖于主关键字。所谓“完全依赖”是指不能存在仅依赖主关键字一部分的属性,如果存在部分依赖,那么这个属性和主关键字的这一部分应该分离出来形成一个新的实体,新实体与原实体之间是一对多的关系。

一个关系模式如果不满足第二范式,就会产生插入异常、删除异常、修改复杂等问题。

例1-12 表1-21是否满足第二范式,若不满足,规范使其满足第二范式。

表1-21 读者借阅图书综合数据表(www.xing528.com)

分析:

例如在表1-21的“读者借阅图书综合数据表”,表中没有哪一个数据项能够唯一标识一条记录,则不满足第二范式。该数据表存在如下缺点:

(1)冗余度大。一个读者如果借n本书,则他的有关信息就要重复n遍,这就造成数据的极大冗余。

(2)插入异常。在此数据表中,若要插入一本书的信息,但此书没有读者借阅,则很难将其插入表中。

(3)删除异常。表中王小昕只借一本书《美学原理》,如果他还书了,这条记录就要被删除,那么整个元组都随之删除,使得他的所有信息都被删除了,造成删除异常。

根据第二范式设置主键,主键设置成“读者卡号+书籍编号”只有这样,才可以唯一标识每一条记录不重复,但读者姓名与读者单位只跟读者卡号有关而与书籍编号无关,即不满足第二范式“非主属性都完全依赖于主键”,同时书籍名称、书籍定价、管理员、性别存在同样的问题。需要规范,规范后满足的第二范式如表1-22和表1-23,用两个不同的实体来表达。

表1-22 读者档案

表1-23 图书编目表

3.第三范式(3NF)

若关系模式R属于1NF,且每个非主属性都不传递依赖于主键,则该关系模式属于3NF。

满足第三范式必须先满足第二范式。也就是说,所有的非主属性的值只可以从主键得到,而不能从其他的属性得到。

简而言之,第三范式就是属性不依赖于其他非主属性,不能产生传递依赖。

例1-13 分析学生联系关系(见表1-24)是否满足第三范式,如果不满足,加以优化使之满足。

表1-24 学生联系表

分析:设置学号为主关键字,则“学院编号”依赖于“学号”,而“二级学院名称”“二级学院院长”“联系电话”等属性依赖于“学院编号”,这称为传递依赖,不满足3NF。

解决方法:将表1-24拆分成两个表,即两个实体,结构如表1-25和表1-26所示。

表1-25 学生表

表1-26 学院表

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈