三大范式理解

是最基本的范式。如果数据库表中的所有字段值都是不可分解的原子值

不符合第一范式

学号

姓名

班级信息

001

张三

园艺园林学院园林172

002

李四

信息工程学院计科182

符合第一范式

学号

姓名

院系

班级

001

张三

园艺园林学院

园林172

002

李四

信息工程学院

计科182

第二范式(完全依赖主键)

需要确保数据库表中每一列都和主键相关,而不能只与主键的某一部分相关(主要针对联合主键而言)。也就是说在一个数据库表中,一个表中只能保存一种数据,不可以把多种数据保存在同一张数据库表中。一张表中出现数据重复就可以将其拆分成两个表

不符合第一范式

学生id

宿舍id

宿舍名

001

1

kb#327

002

2

三#301

003

1

kb#327

符合第二范式

学生id

宿舍id

001

1

002

2

003

1

 

宿舍id

宿舍名

1

kb#327

2

三#301

第三范式(直接依赖主键)

需要确保数据表中的每一列数据都和主键直接相关,而不能间接相关。

不符合第三范式

 

学号

姓名

院系

院系地址

001

张三

园艺园林学院

团委A段

002

李四

信息工程学院

0号楼

符合第三范式

学号

姓名

院系id

001

张三

01

002

李四

02

 

院系id

院系

院系地址

01

园艺园林学院

团委A段

02

信息工程学院

0号楼

 

有时为了满足查询速度,可以有意识的让某些表有些冗余,这是为了提高整个数据库的性能,所以有些时候,不一定要拘泥于达到第三范式或bcn 范式,只要数据库的设计可以提高整个数据库的性能,这就是一个合理的数据库

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值