【问题标题】:Creating a database schema from The Movie Database从电影数据库创建数据库模式
【发布时间】:2017-07-17 03:18:50
【问题描述】:

我正在尝试使用从 themoviedb api 提取的信息创建数据库架构。

在加入电视剧之前,我以为我做得很好,然后我真的很困惑。

TMDb API 似乎将电视剧和电影视为完全不同的事物。它进一步将电视节目表划分为系列、季节和剧集。

例如,电视季(常规季)和单集(客串)有单独的演员表。我不知道如何在数据库中反映所有这些。

我已尽力为下面的所有内容建模,但我认为某处有问题。请忽略数据类型。

Role can be either writer, director, or actor.

【问题讨论】:

    标签: database database-design


    【解决方案1】:

    http://imgur.com/a/1WKQB

    您好 user2146821,

    您的数据库设计看起来不错,除了如何显示常规演员和客串演员之间的关系,正如您所表达的那样。

    目前,您通过在电影、电视季、电视剧集和人物之间建立一个单一的连接表来处理该场景。这将创建一个表,您既不能拥有单一主键也不能拥有正确的复合主键,因为任何给定记录都将为空值。

    在上面的链接图像中,您可以看到处理这种关系的另一种方法 - 您创建三个连接表,每个表的一侧都有 Person,另一侧有一个对应的表(电影、电视季或电视剧集)。这消除了连接表中的空值,允许在连接表中形成复合主键,并以更有意义的方式构建数据库。

    【讨论】:

    • 非常感谢。我觉得这种事情真的很令人困惑。您从“每个表都应该代表一个对象”开始,最终创建了 5 个额外的表来表示“人们在电影/电视中工作”。
    猜你喜欢
    • 2016-07-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-09-30
    • 1970-01-01
    • 2017-08-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多