简述数据库三范式

一、1NF:字段不可分;
二、2NF:有主键,主键与非主键间不存在部分函数依赖;

三、3NF:非主键字段间不存在传递依赖;

 

解释:

一、表:字段1, 字段2(字段2.1, 字段2.2), 字段3 ......

dbms设计不出这样的表

 

二、指的是联合主键的情况。非主键字段不能仅依赖联合主键的一部分。即所有非主键字段要完全依赖于一组联合主键。

不满足第二范式会出现的问题:

 

表:项目名 项目经理 --> 项目描述 框架结构 电话 家庭住址

 

数据冗余:如果一个项目经理可以同时带多个项目,每条记录都含有相同的项目经理的信息;
删除异常:删除所有项目,同时项目经理信息也没了;
插入异常:没有项目,无法记录项目经理信息;
更新异常:调整项目经理信息,所有行都调整。

 

解决办法:

将部分依赖的主键和非主键元素提出来单独成立一张表,在多的那方加外键。如果为多对多可以加入一张关系表。

 

注:所有但关键字表都满足第二范式

 

三、不能存在关键字段 → 非关键字段x → 非关键字段y
问题同第二范式

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值