【问题标题】:I get confused to determine which relationship is appropriate (is it one-to-one or one-to-many)我很难确定哪种关系是合适的(是一对一还是一对多)
【发布时间】:2020-03-18 11:59:53
【问题描述】:

我正在尝试创建一个 CMS 网站,该网站具有多种类型 (raw_unit_type) 的媒体(例如视频、文章、声音)来发布有关主题或问题的内容,并且该媒体具有另一种类型 (unit_type)。

例如: 名为 x 的媒体文件是“视频”类型,此 x 具有另一个名为“收藏”的类型。 名为 y 的媒体文件是“视频”类型,并且此 y 具有另一个名为“比较”的类型。 名为 z 的媒体文件是一个“文章”类型,而这个 z 有另一个名为“收藏”的类型。

现在

在确定这两个表之间哪种关系适合我的情况时,我陷入了困境,如图

应该是一对一还是一对多的关系?这是我解释的问题。 提前致谢

【问题讨论】:

  • 一个raw_unit_type 可以有多个unit_types 还是只有一个?例如。 video 是否有可能与虚构的unit_typescollectionholidays 一起使用?
  • unit_type 可以有多个 unit_types 而不仅仅是一个
  • 这看起来像一个多对多的关系。如果 'video' 和 'article' 都可以有一个多对一的 'collection',但如果 'video' 也可以有多个 unit_type('collection', 'comparison'),那就是一对多。一对多 + 多对一 = 多对多
  • 那么它应该是many-to-many。一个raw_unit_type 可以有多个unit_types,但一个unit_type 只有一个raw_unit_type,如果你只看一种关系的话。但是同样的unit_type 也可以出现在另一个raw_unit_type 不同的关系中。无论如何,这绝对不是one-to-one 关系。
  • @verhie raw_unit_type(例如视频)不能有多个 unit_type

标签: mysql one-to-many entity-relationship one-to-one


【解决方案1】:

这是many-to-many 关系。您需要在这两个表之间建立一个连接表,因为raw_unit_type(“video”)可以有多个unit_types(“collection”、“comparison”等),而unit_types 可以属于多个raw_unit_types

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-03-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-23
    • 1970-01-01
    • 2011-06-14
    • 1970-01-01
    相关资源
    最近更新 更多