数据库&共享主键?

时间:2016-10-12 00:37:29

标签: mysql database web database-design

好的,我正在为我正在制作的网站设计一个数据库,它将托管有关不同内容的信息,(有点像IMDb)。

我将有'电影'页面,'电视'页面& “演员”,“导演”和可能的作家的页面。

现在我最初想出了类似的东西:
电影{
  MediaID:#One媒体类型(电影/电视)将有一个ID
  描述:#One电影将有一个描述
  Cert.UK:
  Cert.US:#One电影可能有每个国家的证书
  IMDb:#One电影将有一个IMDb评级   持续时间:#One电影将有一个持续时间
  发布:#One电影将在发布时发布   类型:#A电影可能属于多种类型   People.ActorID #One电影可能有多个演员   People.DirectorID #One电影可能有多个导演   图片:#One电影将有一个图像
  预告片:#One Film将有一个预告片 }

证书{
  英国:
  美国:
}

人{
  PeopleID:#One person将有一个ID
  角色:#一个人可能有多个角色
  Film.MediaID:#一个人可能属于多部电影   姓名:#One人将有一个名字
  DOB:#One人将有一个出生日期
  描述:一个人将有一个描述
}

对于MediaID的电影案例;电影和电视表都将共享MediaID作为主键,我不想制作媒体表并添加类型:电影/电视,因为它们需要不同的列,留下大量不必要的空数据。可以保留原样吗?

此外: 添加新电影时,如何确定其MediaID尚不存在? 如果存在一对多的关系,我是否需要创建一个新表?例如,我考虑过创建一个角色和流派表,但这是必要的吗?

0 个答案:

没有答案