如何将将 ER 图简化为数据表结构?

数据库可以使用符号来表示,并且这些符号可以简化为表的集合。
在数据库中,每个实体集或关系集都可以用表格形式表示。
ER图如下:

将ER图转换成表格有几点:

  • 实体类型变成表。

在给定的 ER 图中,LECTURE、STUDENT、SUBJECT 和 COURSE 形成单独的表。
  • 所有单值属性都成为表的列。

在 STUDENT 实体中,STUDENT_NAME 和 STUDENT_ID 构成 STUDENT 表的列。同样,COURSE_NAME 和 COURSE_ID 构成 COURSE 表的列,依此类推。
  • 由主键表示的实体类型的键属性。

在给定的 ER 图中,COURSE_ID、STUDENT_ID、SUBJECT_ID 和 LECTURE_ID 是实体的关键属性。
  • 多值属性由单独的表表示。

在学生表中,爱好是一个多值属性。因此不可能在 STUDENT 表的单个列中表示多个值。因此,我们创建一个表 STUD_HOBBY,其列名为 STUDENT_ID 和 HOBBY。使用这两个列,我们创建一个复合键。
  • 由组件表示的复合属性。

在给定的 ER 图中,学生地址是一个复合属性。它包含 CITY、PIN、DOOR#、STREET 和 STATE。在 STUDENT 表中,这些属性可以合并为单独的列。
  • 表中不考虑派生属性。

在 STUDENT 表中,年龄是派生属性。可以通过计算当前日期和出生日期之间的差来计算任意时间点。
使用这些规则,您可以将 ER 图转换为表和列,并分配表之间的映射。给定 ER 图的表结构如下:

图:表结构