0
点赞
收藏
分享

微信扫一扫

【MySQL高级篇笔记-数据库的设计规范(中) 】

千妈小语 2023-06-11 阅读 107

此笔记为尚硅谷MySQL高级篇部分内容

目录

一、为什么要数据库设计 

二、范式

1、范式简介

2、范式都包括哪些 

3、键和相关属性的概念

4、第一范式(1st NF)

5、第二范式(2nd NF)

6、第三范式(3rd NF)

7、小结

三、反范式化

1、概述

2、 应用举例

3、反范式的新问题

4、反范式的适用场景 

1. 增加冗余字段的建议 

2. 历史快照、历史数据的需要

五、BCNF(巴斯范式)

六、第四范式(了解)

七、第五范式、域键范式(了解)

八、ER模型

1、ER模型包括哪些要素 

2、关系的类型 

九、数据表的设计原则 

十、数据库对象编写建议

1、关于库 

2、关于表、列

3、关于索引

4、SQL编写


一、为什么要数据库设计 


二、范式


1、范式简介

2、范式都包括哪些 

3、键和相关属性的概念

4、第一范式(1st NF)

5、第二范式(2nd NF)

6、第三范式(3rd NF)

7、小结

范式的优点: 数据的标准化有助于消除数据库中的数据冗余,第三范式(3NF)通常被认为在性能、扩展性和数据完整性方面达到了最好的平衡。

范式的缺点: 范式的使用,可能降低查询的效率。因为范式等级越高,设计出来的数据表就越多、越精细,数据的冗余度就越低,进行数据查询的时候就可能需要关联多张表,这不但代价昂贵,也可能使一些引策略无效

范式只是提出了设计的标准,实际上设计数据表时,未必一定要符合这些标准。开发中,我们会出现为了性能和读取效率违反范式化的原则,通过增加少量的冗余或重复的数据来提高数据库的读性能,减少关联查询,join表的次数,实现空间换取时间的目的。因此在实际的设计过程中要理论结合实际,灵活运用。

三、反范式化


1、概述

2、 应用举例

3、反范式的新问题

4、反范式的适用场景 

当冗余信息有价值或者能 大幅度提高查询效率 的时候,我们才会采取反范式的优化。

1. 增加冗余字段的建议 

2. 历史快照、历史数据的需要

五、BCNF(巴斯范式)


六、第四范式(了解)


七、第五范式、域键范式(了解)


八、ER模型


1、ER模型包括哪些要素 

注意:实体和属性不容易区分。这里提供一个原则:我们要从系统整体的角度出发去看,可以独立存在的是实体,不可再分的是属性。也就是说,属性不能包含其他属性。 

2、关系的类型 

九、数据表的设计原则 


注意:这个原则并不是绝对的,有时候我们需要牺牲数据的冗余度来换取数据处理的效率。 

十、数据库对象编写建议


1、关于库 

2、关于表、列

3、关于索引

4、SQL编写

高级篇笔记PDF自取

链接:https://pan.baidu.com/s/1pVqrTwIZFoED77i-EFmw6g?pwd=3333 
提取码:3333

举报

相关推荐

0 条评论