一、什么是数据建模?
设计人员将现实世界(逻辑层)的某个场景(主要表现为其中的实体概念和关系概念),通过一系列步骤,设计为可以进行计算机世界工作的素材。(表或者类和对象)
二、数据建模中的指导步骤
1)确定角色
2)根据角色,写故事(动作)
3)根据故事,找实体
4)表现实体之间的关系(借助E-R图工具)
5)为实体、关系确定属性(借助三大范式)
三大范式
第一范式:保证列具有原子性,不可再分
第二范式:满足第一范式的基础上,具有唯一性,添加主键外键等,限制表中多对多的关系
第三范式:每列和主键都有直接关系,限制一张表中的一对多关系
三大范式的目标:消除数据冗余 优点:提升查询便捷性 缺点:提升了修改的复杂性
6)为每个属性确定类型+约束
7)完成建表(通过workbench建好表,复制出来)
如:CSDN的博客系统
第一步:确定角色 博主、游客
第二步:根据角色,写故事 我可以点赞作者写的文章,并且发表对作者文章的评论,最后收藏作者写的文章。
第三步:根据故事,找实体(一般来说是故事出现的名词)文章、作者
第四步:表现实体间的关系
第五步:为实体、关系确定属性
用户的属性有用户id、用户名、密码
文章的属性有文章id、标题、正文
点赞的属性有点赞id或者复合主键(点赞人id+被点赞文章id)(一个人针对一篇文章只能点赞一次)
评论的属性有评论id、评论内容、评论时间
第六步:为每个属性确定类型+约束
第七步:完成建表(通过workbench建表,复制出来)