关于数据库三大范式的理解

三大范式

1. 列不可分

列到底可不可分,和具体应用有关,不具有绝对性。在某应用中地址可能是不可分的,但在另外一个应用中可能会分为省份,城市,街道等等。

2. 消除部分依赖

假设
用大白话说,就是

对于单列主键,肯定不存在部分依赖,一定是完全函数依赖。
对于多列主键,消除了部分依赖,则满足第二范式

3. 消除传递依赖

> 每个非码属性都和主键直接相关

数据库设计时满足的范式越高,数据就倾向于分散到不同的表中,这样就导致查询的时候经常会出现多表连接的情况,查询速度会比较慢,数据库设计者要在”更高的范式”和”更快的查询速度”之间进行权衡。
当然,也可以任性地选择更高的范式,后期进行SQL性能调优,比如建索引,改写SQL语句等方式。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值