数据建模

分析需求

概念模型

业务中的实体、概念以及他们间的关系

逻辑模型

概念模型的基础上,增加一些细节,例如数据类型

实体模型

在mysql中新建一个model
注意:列名称不要有空格
image.png

主键

唯一标识给定表中的每条记录的列
唯一:所以不能出现两行同名的情况,同时也应该便于优化,以及后续不可需改
所以一般新增一个ID列,同时设为PK(主键),AI()自动递增
image.png

外键

当我们给两个表添加关系时,关系的一端称为主键表或父表,另一端称为外键表或子表
image.png
当A子表后续连接其他B子表时,A的外键也会在B中出现

外键约束

image.png
当父表主键删除时,子表应进行的操作

规范化

第一范式

避免出现类似的列,如tag1,tag2,tag3…
避免一个格中出现多个值

第二范式

一张表中的列应该描述一个主体

第三范式

表中的列不应该派生其他列
如:收款。支付和结余的关系,结余这一列不应该出现

总之,不要在表中重复出现非数字的内容,把需求放在第一位

只需要对当下问题做出最佳解决方案就行。不用考虑未来,注意当下的需求

由模型到数据库

database菜单下的正向工程,同步工程,逆向工程