复习 数据库范式

第一范式:每一个列都要确保原子性,即每一列都是不可以拆分的最小单元。
例:

用户id      用户名称          地址            电话
01         小明              xx省xx市xx区    1888888

主键为用户id
这里的地址可以拆分,不符合原子性,可将其删去或拆分以满足第一范式。
第二范式
在满足第一范式的基础上满足每一个列与主键相关,即依赖于主键(此处依赖即可,间接依赖或直接依赖都满足第二范式)。
例:
下表主键为用户id

用户id      用户名         用户电话           产品id   订单id
02          小张           228888           91982    202001

这里的产品id和主键用户id无依赖关系,将其删去所得表即可满足第二范式。
分析:此处的用户名,用户电话与主键用户ID是直接依赖关系,一个用户唯一拥有一个id,名称以及电话,用户创建的时候即一同创建。而此处的订单id与用户id是间接依赖关系,用户通过下单,而后产生订单信息以及订单id。

第三范式:在满足第二范式的基础上,每列对主键都是直接依赖的关系。
还是第二范式那个例子,删去与主键是间接依赖的列订单id即可满足第三范式。
若要记录用户与订单的关系,可建用户id,订单id以及订单相关信息的表,其中订单id为主键,用户id为外键。用外键来辅助记录间接关联关系。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值