登录
首页 >  数据库 >  MySQL

ER图的最小化

来源:tutorialspoint

时间:2023-08-27 23:14:03 388浏览 收藏

一分耕耘,一分收获!既然都打开这篇《ER图的最小化》,就坚持看下去,学下去吧!本文主要会给大家讲到等等知识点,如果大家对本文有好的建议或者看到有不足之处,非常欢迎大家积极提出!在后续文章我会继续更新数据库相关的内容,希望对大家都有所帮助!

问题陈述

ER图是显示各种表格及其之间关系的图形表示。 ER 图我们可以减少数据库的数量。

一对一基数

让我们考虑下面的一对一基数图 -

ER图的最小化

在此 ER 图中,员工可以为一家公司工作,但公司可以有许多这样的员工。上面的 ER 图代表 3 个实体 -

  • Employee 实体有 2 个属性,即 - emp_id 和 emp_name。 emp_id 是主键
  • 公司实体有 2 个属性,即 - emp_id 和 cmp_name。 cmp_id 是主键
  • 我们不能将 cmp_id 作为主键,因为多个员工可以为同一个 cmp_id 工作。但是,我们可以将 Employee 和 Work 表结合起来。因此,在一对多基数场景中至少需要 2 个表。

多对多基数

让我们考虑下图的一对多基数 -

ER图的最小化

在此 ER 图中,员工可以为多家公司工作 一个公司可以有很多这样的员工。上面的 ER 图代表 3 个实体 -

  • Employee 实体有 2 个属性,即 - emp_id 和 emp_name。 emp_id 是主键
  • 公司实体有 2 个属性,即 - emp_id 和 cmp_name。 cmp_id 是主键
  • 与前面的示例不同,无法将工作表与 Employee 或 Company 合并。如果我们尝试合并它,则会创建冗余数据。因此,在多对多基数场景中至少需要 2 个表

今天带大家了解了的相关知识,希望对你有所帮助;关于数据库的技术知识我们会一点点深入介绍,欢迎大家关注golang学习网公众号,一起学习编程~

声明:本文转载于:tutorialspoint 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>