分析需求:分析业务和需要处理的数据库的需求
概要设计:设计关系E-R图
设计数据库的步骤(以个人博客为例)
- 收集信息,分析需求
用户表
分类表
文章表
评论表
友链表
- 标识实体
- 标识实体之间的关系
三大范式
为什么需要数据规范化?
- 信息重复
- 更新异常
- 插入异常
- 无法正常显示信息
- 删除异常
- 丢失有效信息
三大范式
第一范式(1NF)
原子性:保证每一列不可再分
第二范式(2NF)
前提:满足第一范式
每张表只描述一件事情
第三范式(3NF)
前提:满足第一范式和第二范式
表中每一列数据都和主键直接相关,而不能间接相关
规范性 和 性能的问题
关联查询的表不得超过三张
- 考虑商业化的需求和目标,数据库的性能更加重要
- 在规范性能的时候,适当考虑规范性
- 故意给某些表增加冗余字段
- 故意增加计算列(从大数据量降低为小数据量的查询:索引)