数据库设计

为什么要进行数据库设计


上图中,人力资源的员工表和财务的员工表中,都有员工姓名、薪资信息

  1. 减少数据冗余
    避免相同的数据存在多个地方,比如:文章表中保存了作者名

  2. 节约存储空间

  3. 高效访问

  4. 避免数据 操作异常

设计步骤

1. 需求分析

了解客户的业务流程,对数据的处理需求

2. 概念结构设计

建立与数据库无关的概念模型,如:E-R图

3. 逻辑设计

应用三大范式设计

4. 物理设计

根据逻辑设计,在数据库中建表

实体与属性

1. 实体(Entity)

抽象名词,指客观存在的事物,也可以是抽象的概念。
例如:学生、用户、文章、商品、评论、商店、订单、权限

2. 属性(Attribute)

实体的特性,或者对实体的描述。

例如:

  • “学生”属性有学号、姓名、性别、出生年份、专业、入学时间等
  • “文章”属性有标题、内容、作者名称、发布时间、收藏数量

E-R模型

E-R图也称实体-联系图(Entity Relationship Diagram),提供了表示实体类型、属性和联系的方法,用来描述现实世界的概念模型。

组成

矩形框:实体,一般是名词
椭圆框:属性,一般是名词
菱形框:关系,一般是动词
连线:实体与实体,实体与属性之间的关系

设计范式

https://www.malaoshi.top/show_1EF5X1BLw7Wz.html

表之间的关系

https://www.malaoshi.top/show_1EF5X28kA8Jr.html


原文出处:/show_1EF3sj1Gt7E5.html