问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

数据库有几种范式?

发布网友 发布时间:2022-04-26 14:03

我来回答

1个回答

热心网友 时间:2022-04-07 19:46

目前关系数据库有六种范式,即第一范式(1NF)、第二范式(2NF)、第三范式(3NF)、巴斯−科德范式(BCNF)、第四范式(4NF)和第五范式(5NF,又称完美范式)。满足最低要求的范式是第一范式(1NF)。在第一范式的基础上进一步满足更多规范要求的称为第二范式(2NF),其余范式依次类推。一般来说,数据库只需满足第三范式(3NF)。

第一范式(1NF)第一范式(1NF)是指在关系模型中,对域添加的一个规范要求,所有的域都应该是原子性的,即数据库表的每一列都是不可分割的原子数据项,而不是集合、数组、记录等非原子数据项。即实体中的某个属性有多个值时,必须拆分为不同的属性。在符合第一范式(1NF)表中的每个域值只能是实体的一个属性或一个属性的一部分。

简而言之,第一范式(1NF)是最基本的范式,如果数据库表中的所有字段值都是不可分解的原子值,就说明该数据库表满足第一范式(1NF)。在任何一个关系数据库中,第一范式(1NF)是对关系模式设计的基本要求,所有设计的数据模型都必须满足第一范式(1NF)。

从上面的定义描述中,可以归纳出第一范式(1NF)具有如下几个显著特点:((1)数据库表中的字段都是单一属性。

①字段不可再分。

②同一列中不能有多个值。

(2)单一属性由基本类型构成。

①整型。

②实数。

③字符型。

④逻辑型。

⑤日期型。

⑥其他类型。

满足以上两大特征的表就是符合第一范式(1NF)的表,不满足以上任一特征的表都是不符合第一范式(1NF)的表。

例如,图字段可再分的表所示的“电话”字段可以再拆分成“手机”与“座机”字段,不满足“字段不可再分”的要求,因此不符合第一范式(1NF)要求。

字段可再分的表

又如,图字段可再分的表所示的“姓名”字段包含“张伟”与“宋鑫”两个值,不满足“同一列中不能有多个值”的要求,因此也不符合第一范式(1NF)要求。

同一列中有多个值的表

第二范式(2NF)第二范式(2NF)是在第一范式(1NF)的基础上建立起来的,即满足第二范式(2NF)必须先满足第一范式(1NF)。第二范式(2NF)要求数据库表中的每个实例或记录必须可以被唯一地区分。选取一个能区分每个实体的属性或属性组,作为实体的唯一标识。例如,员工表中的身份证号码即可实现每个员工的区分,该身份证号码即候选键,任何一个候选键都可以被选作主键。在找不到候选键时,可额外增加属性以实现区分。如果在员工关系中没有对其身份证号码进行存储,而姓名可能会在数据库运行的某个时间重复,无法区分出实体时,设计身份证号码等不重复的编号以实现区分,被添加的编号选作主键。注意:该主键的添加是在ER设计时添加,不是在建库时随意添加。

第二范式(2NF)要求实体的属性完全依赖于主关键字。所谓完全依赖,是指不能存在仅依赖主关键字一部分的属性,如果存在,那么这个属性和主关键字的这一部分应该分离出来形成一个新的实体,新实体与原实体之间是一对多的关系。为实现区分,通常需要为表加上一个列,以存储各个实例的唯一标识。

简而言之,第二范式(2NF)在第一范式(1NF)的基础之上更进一层。第二范式(2NF)需要确保数据库表中的每一列都和主键相关,而不能只与主键的某一部分相关(主要针对联合主键而言)。也就是说在一个数据库表中,一个表中只能保存一种数据,不可以把多种数据保存在同一个数据库表中。

所谓联合主键,是指由两个或两个以上的字段共同组成数据表的主键。如图联合主键表所示,单凭“客户”字段无法确定表中唯一的记录,单凭“开户银行”字段也无法确定表中唯一的与“开户银行”一起组成数据表的联合主键。

联合主键表

从上面的定义描述中,可以归纳出第二范式(2NF)具有如下几个显著特点:((1)数据库表满足第一范式(1NF)。

(2)数据库中每个表均有主键。

①单字段主键。

②联合主键。即不能存在单个主键字段决定非主键字段的情况。

例如,表中有A、B、C、D、E五个字段,若A与B为联合主键(A,B),如有A决定C的情况(A→C),则不符合第二范式(2NF)。

满足以上特征的表就是符合第二范式(2NF)的表,不满足以上任何一特征的表都是不符合第二范式(2NF)的表。

例如,如图所示,所有字段均不可再拆分,因而满足第一范式(1NF)的要求,但表中没有任何一个字段可以确定表中的唯一记录,即表中没有主键,因此其不满足“数据库中每张表均有主键”的要求,所以不符合第二范式(2NF)要求。

又如,如图所示,满足第一范式(1NF)的要求,并且在原来的基础上增加了“ID”字段作为表的主键,因此其符合第二范式(2NF)要求。

没有主键的数据表

增加了主键的数据表

重新分析图1−3所示的联合主键表,此表符合第一范式(1NF)“字段不可再拆分”的要求,并且有“客户”与“开户银行”两个字段作为表的联合主键(客户,开户银行),但其是否就是一个符合第二范式(2NF)的表呢?

进一步分析,就可以发现:“客户电话”字段由“客户”字段决定,“开户行地址”字段由“开户银行”字段决定;即存在如下依赖关系:客户→客户电话,开户银行→开户行地址。

(客户,开户银行)为主键字段,(客户电话,开户行地址)为非主键字段,因此,其不符合联合主键中“不能存在单个主键字段决定非主键字段”的情况,所以可以认定其并不是符合第二范式(2NF)的数据表。

例1.1判断如图所示的学生信息表是否符合第二范式(2NF)。

图所示中存在联合主键(学号,课程编号),但存在(学号→姓名)、(课程编号→课程名)的依赖关系,即存在某个主键字段决定非主键字段的情况,因此其不符合第二范式(2NF),不是第二范式(2NF)表。可考虑把此表拆成分数表(见图)、课程表(见图)和姓名表(见图),则此三个表是符合第二范式(2NF)的表。

图学生信息表

图分数表

图课程表

图姓名表

第三范式(3NF)第三范式(3NF)是第二范式(2NF)的一个子集,即满足第三范式(3NF)必须满足第二范式(2NF)。第三范式(3NF)要求一个关系中不包含已在其他关系包含的非主关键字信息。

第三范式(3NF)就是任何非主属性不依赖于其他非主属性,也就是在满足第二范式(2NF)的基础上,任何非主属性不得传递依赖于主属性。第三范式(3NF)需要确保数据表中的每一列数据都和主键直接相关,而不能间接相关。数据不能存在传递关系,即每个属性都跟主键有直接关系而不是间接关系。如属性之间含有A→B→C这样的关系,是不符合第三范式(3NF)的。

当数据表不符合第三范式(3NF)时,会有大量的冗余数据,还会存在插入异常、删除异常、数据冗余度大、修改复杂等问题。

从上面的定义描述中,可以归纳出第三范式(3NF)具有如下几个显著特点:((1)数据库表满足第二范式。

(2)数据库表的非主键字段不存在传递依赖关系(即非主键字段不能决定其他非主键字段)。例如,表中有A、B、C、D、E五个字段,若A为主键,如有C决定D的情况(C→D)则不符合第三范式(3NF)。

满足以上特征的表就是符合第三范式(3NF)的表,不满足以上任何一特征的表都是不符合第三范式(3NF)的表。

如图所示,表中有主键(工号),因而满足第二范式(2NF)的要求;但表中非主键字段间存在传递依赖关系:非主键字段“部门”决定非主键字段“部门电话”和“部门主管”(部门→部门电话,部门→部门主管),因此不符合第三范式(3NF)的要求。

图非主键字段存在传递依赖关系的表

例1.2判断图所示的学生院属信息表是否符合第三范式(3NF)。

图学生院属信息表

图中有主键(学号),则满足第二范式(2NF)的要求,但存在(所在学院→学院电话)、(所在学院→学院地点),即存在非主键字段决定其他非主键字段的情况,因此其不符合第三范式(3NF)的要求,不是第三范式(3NF)表。可考虑把此表拆成学生表(见图)和学院表(见图),则两个表是符合第三范式(3NF)的表。

图学生表

图学院表

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
怎么在拼多多快速拍单(拼多多快速拍单技巧) 拼多多卖家怎么拍单快一点(拼多多卖家如何快速拍单) 做拼多多店群怎么快速拍单(如何快速生成拼多多店群订单) 拼多多店群如何拍单啊(拼多多店群怎么下单) 求外贸英语高手:这句怎么翻译?The pallets for sheet consignments are... 龙阳泣鱼的意思是什么 龙阳泣鱼的意思 怎么理解龙阳泣鱼的意思 宁德时代代码 他们说用Qlarité (Qlarite)可以抗衰? 关于Qlarité,请问效果怎样? 中信国安天下第一城 就是香河第一城 以前是干嘛用的 是谁盖起来的 数据库三范式的具体含义是什么? 数据库的三范式分别是什么? 电脑的电源里面有没有保险丝能不能更换? 开关电源屡烧保险管 怎么选择开关电源的保险丝 电源线保险丝问题 怎么查看充电器保险丝有没有坏 明纬电源一通电,保险管就烧掉什么原因? 开关电源为什么一通电就烧保险丝?有几种可能 主板有保险丝吗?如果有在什么位置呢? 充电器保险丝在哪个位置 喜利得混凝土开孔水钻DD一REC火线和零线如果接反了会跳闸或烧坏保险丝吗? 打印机保险丝在什么位置 洗衣机的保险丝在哪里 三一挖掘机电源总开关是哪个保险丝 今日早上起来上厕所拉的大便有鲜红色的血是什么问题? 喜利得混凝土开孔水钻DD一REC老跳闸或烧坏主机保险丝。 大便有新鲜血液附在上面,可能是什么原因 这种电源开关有没有保险丝的? 三范式是什么? 数据库第二范式和第三范式的区别的是什么? 数据库的3大范式 数据库三大范式? 满足数据库的第三范式有什么好处 数据库中第一、第二、第三范式的特点是什么啊? 余秋雨发妻李红:14年陪伴抵不过美色,背负泪水独自呵护女儿,最后如何? 余秋雨前妻李红照片 李红任劳任怨14年,余秋雨报以离婚书,夫妻之情抵不过漂亮脸蛋吗? 14年婚姻不敌一时激情,他离婚娶小16岁娇妻,后来怎样? 最年轻院长,46岁出轨另娶小16岁娇妻被痛批为“无耻文人”,为什么呢? 余秋雨的个人简介 余秋雨的前妻李红现在做什么工作 余秋雨:46岁抛弃糟糠之妻,娶小16岁美女,到底是才子还是渣男? 网购怎样微信支付? C.O.C报告什么意思 C.O.C 是什么意思? C.O.的来历 o.c.是什么意思? 请问c.o.o.是什么意思啊?