跟踪数据库

时间:2017-07-14 19:20:39

标签: mysql database

我没有找到答案,我只是在寻找一些指导或一点点清晰度。我需要设计一个数据库,好像我为redbox工作,我试图跟踪电影演员和导演。所以我假设我需要三张不同的牌桌,但我不知道如何跟踪"跟踪"它。我是否会为每部电影创建自定义ID以及跟踪信息亭所在位置的内容?就像我说的,我想我能做到这一点,但我完全理解它。

感谢任何帮助

1 个答案:

答案 0 :(得分:1)

大致说来,这就是你需要的:

(基本关系规则和策略适用,因此每个表都需要有一个主键,并且这些键将用于将表关联在一起)。

<强>电影: 每部电影一行,包括标题,评级,年份等。

<强>人 在任何影片中,任何可能是演员或工作人员的人都可以添加一行相关人员表格。

信用: credit_type 现在讲述电影&lt; - &gt;人 由于这是一个多对多的关系,你需要在两者之间有一个表。通常情况下,这将被称为&#34;信用&#34;你需要一个credit_type表来描述信用(演员,导演,作家,制片人等)。

当然,这与您的跟踪&#34;无关。题。为此你需要一些表:

广告:
这里是您存在的每部电影副本的一行。很明显,这张表中的电影会有一个外键。在现实世界中,将有一个指定的ID,然后将其作为条形码打印出来并附加到物理材料的磁盘+套筒上。

<强>亭:
对于每个Kiosk,都有一行,以及位置信息,如果同一位置有多个信息亭,则可能是一个地址,也可能是一个注释。

<强> kiosk_bin:
对于每个Kiosk,您将拥有1-M箱,每个箱都有一个识别它的号码。

我不会这样做,但为了简单起见,您可以在kiosk_bin中添加一个列,该列将是库存表的外键。通过这种方式,您可以指示库存(一个特定电影的单个副本)位于kiosk_bin中。

<强>构件: 这些是订阅该服务的人。

<强> member_checkout: 当成员从kiosk / kiosk_bin获取电影时,会在此处创建一行,包含inventory_id和日期,系统会更新kiosk_bin行以删除inventory_id并显示该bin现在为空并且可以接受另一个库存副本。

正如你所看到的,这是非平凡的。任何相对复杂的业务流程的数据库设计都将超过3个表,我很抱歉地说。

这是一个ERD,它说明了我为另一个类似问题所做的一些基本电影与信用关系。这些表的命名略有不同,但您应该可以匹配它们。

Simple Movie ERD