数据库三范式

第一范式(1NF):字段具有原子性,不可再分。所有关系型数据库系统都满足第一范式) 

       数据库表中的字段都是单一属性的,不可再分。例如,姓名字段,其中的姓和名必

须作为一个整体,无法区分哪部分是姓,哪部分是名,如果要区分出姓和名,必须设计成两

个独立的字段。 

   

  第二范式(2NF): 

第二范式(2NF)是在第一范式(1NF)的基础上建立起来的,即满足第二范式(2NF)必

须先满足第一范式(1NF)。 

要求数据库表中的每个实例或行必须可以被惟一地区分。通常需要为表加上一个列,以存储

各个实例的惟一标识。这个惟一属性列被称为主关键字或主键。 

   

第二范式(2NF)要求实体的属性完全依赖于主关键字。所谓完全依赖是指不能存在仅依赖

主关键字一部分的属性,如果存在,那么这个属性和主关键字的这一部分应该分离出来形成

一个新的实体,新实体与原实体之间是一对多的关系。为实现区分通常需要为表加上一个列,

以存储各个实例的惟一标识。简而言之,第二范式就是非主属性非部分依赖于主关键字。 

    

 第三范式的要求如下: 

满足第三范式(3NF)必须先满足第二范式(2NF)。简而言之,第三范式(3NF)要求一

个数据库表中不包含已在其它表中已包含的非主关键字信息。 所以第三范式具有如下特征: 

          1,每一列只有一个值 

          2,每一行都能区分。 

          3,每一个表都不包含其他表已经包含的非主关键字信息。 

例如,帖子表中只能出现发帖人的id,而不能出现发帖人的id,还同时出现发帖人姓名,

否则,只要出现同一发帖人 id 的所有记录,它们中的姓名部分都必须严格保持一致,这就

是数据冗余。

 

 

(1) 原子性

(2) no 部分依赖

(3) no 传递依赖

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值