【问题标题】:What would normalized ERD (Entity-Relationship Diagram) look like for this table此表的标准化 ERD(实体关系图)是什么样的
【发布时间】:2021-06-15 19:03:36
【问题描述】:

我被困在我的一个项目上。我的桌子看起来有点像这样,但我想我只是在兜圈子,发疯了。

问题在于如何在类别下“分离”属性。我需要为每个类别制作实体吗?那么,我们将如何声明键以及哪个表将采用外键? 或者,或者,没有必要对此进行规范化?

我也在考虑以某种方式枚举属性以使类别成为属性?这还是一件事吗……

感谢任何建议!

【问题讨论】:

  • 询问 1 个具体研究过的非重复问题,关于您在发表的参考资料后遇到的第一个问题。说明你的目标是什么以及你从什么开始。 How to Ask help center PS 请使用文本,而不是图像/链接作为文本——包括表格和 ERD。转述或引用其他文本。只提供您需要的东西并将其与您的问题联系起来。仅将图像用于无法表达为文本或增强文本的内容。在图像中包含图例/键和说明。 PS这包括,告诉我们如何阅读该表。 PS“任何建议”不是一个有效的问题
  • 你好@philipxy,谢谢你的建议!这是我第一次发布问题,我更容易使用图像来描述问题并减少语言障碍。我现在看到我可以更好地描述这个问题。无论哪种方式,我都会确保更加简洁和精确。非常感谢!
  • 问题是永远的,目的是为以后的其他人提供高质量的问题和答案,请考虑改进。特别是当不清楚第一个问题是什么,或者你问的任何问题的详细含义是什么时,如果清楚的话,它们可以作为重复和/或要求(重新)编写教程/教科书而关闭。 (但请不要以使合理答案无效的方式进行编辑。)Meta Stack Overflow Meta Stack Exchange PS "Normalize" to a "1NF" has no particular meaning. 给你的。
  • @philipxy 我明白了,现在您已经解释了这些要求背后的想法。确实,我应该牢记堆栈的大局。关于这个问题,我实际上是自己解决的。您是建议我完全删除问题还是修改它,包括解决方案?
  • 接收不佳的帖子(分数 help center 中解决的问题,并已在元链接中提出。根据搜索框帮助了解如何使用“site:”进行谷歌搜索和基于 SO/SE 文本的搜索。

标签: mysql database-design entity-relationship database-normalization erd


【解决方案1】:

我认为只有一种方法可以规范化此表。每条线都是一个实体。

Entity
------
Entity ID
Entity Letter
Entity Name
Entity Name Type

其中实体 ID 是主集群键,并且您在(实体字母、实体名称、实体名称类型)上有一个唯一索引。

然后你有一个属性表来保存一个属性。实体和属性之间存在一对多的关系。

Attribute
---------
Attribute ID
Entity ID
Category (1 or 2)
Level (x1 - x4, x1 - x8)
Attribute Value

其中属性 ID 是主聚类键,实体 ID 是指向实体的外键。您在(实体 ID、类别、级别)上有一个唯一索引来对属性进行排序。

您可以通过创建类别表和/或级别表来进一步细分,但我认为这是一个足够的细分。

我不确定第 2 类中的 x1 是拼写错误还是故意的。无论哪种方式,它都是建模的。

【讨论】:

    猜你喜欢
    • 2015-03-14
    • 1970-01-01
    • 2010-09-19
    • 2015-05-04
    • 2019-01-22
    • 2011-04-26
    • 2018-07-29
    相关资源
    最近更新 更多