基于 E-R 模型的数据库设计方法,最早是 P.P.S. Chen 在 1976 年提出来的,听起来老派,但现在用起来还挺香的。它就是把现实生活中的人啊、事啊、物啊这些搞清楚,画成E-R 图,再转成能用在数据库里的结构。嗯,前期脑子要清楚,画图也要准,后面转模型就顺多了。
画 E-R 图的时候,重点在搞清楚实体和联系,比如“学生”和“课程”之间的“选课”关系。你画得越清楚,后续建表越轻松。配合几个工具,用关系模式转换那一块也不难,上手快。
还有一种方法,叫基于 3NF 的数据库设计,是 S·Atre 搞的。思路也蛮清楚,先把所有属性列出来,再按函数依赖去分组,把不符合第三范式的拆掉,搞成多个表。适合对范式要求高的项目,比如要尽量减少数据冗余。
想快速上手 E-R 图?我帮你找了几个不错的资源:
- 数据库基础教程实体-关系图(E-R 图)详解
- E-R 图、关系模式、关系数据表与 SQL 数据库
- Access 2010 基础教程 E-R 图设计关系模型详解
- E-R 图转换为关系模型的详细步骤
- 从 E-R 图到关系模型:学生选课案例
如果你经常设计数据库结构,尤其是从需求到建表一条龙走下来,那这个方法值得一试。工具支持也多,不管你用Access、SQL Server还是MySQL,都能玩得转。