数据库设计

1.首先为什么要进行数据库设计?


2.如何设计数据库

需求分析——逻辑设计——物理设计——维护优化

数据库需求的作用点:

1.数据是什么

2.数据有哪些属性

3.数据和属性各自的特点有哪些?

举个例子   你有一个App,这个App是有不同的场景控制家里的家具家电。

1.数据:有不同场景,不同设备

2.场景:规则,行为    设备:规则和行为

3.一个场景可以有多个设备,可以触发多个规则,多个规则可以触发多个设备行为也可以触发一个设备行为,你想怎么做呢?

逻辑设计意思就是逻辑建模型,比如场景和设备或者行为还有规则是否有必然联系:

物理设计:

1.新的需求进行建表

2.索引优化

3.大表拆分


为什么要进行需求分析

1.了解系统中所要储存的数据

2.了解数据的储存特点

3.了解数据的生命周期

要搞清楚的一些问题

1.实体及实体之间的关系(1对1,1对多,多对多)

2.实体所包含的属性有什么?

3.哪些属性或属性的组合可以唯一标识一个实体



设计范式概要选择

第一范式:

定义:

数据库表中的所有字段都是单一属性,不可再分的,这个单一属性是由基本的数据类型所构成的,如整数,浮点数,字符串,等;

第一范式:


没有这种设计方式

第二范式:


同名修改删除异常


推荐阅读更多精彩内容