好的,我正在为我正在制作的网站设计一个数据库,它将托管有关不同内容的信息,(有点像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人将拥有一个ID
角色:#一个人可能有多个角色
Film.MediaID:#一个人可能属于多部电影
姓名:#One人将有一个名字
DOB:#One人将有一个出生日期
描述:一个人将有一个描述
}

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

另外:添加新电影时,我怎样才能确定它已经存在's MediaID doesn'?
如果存在一对多的关系,我是否需要创建一个新表?例如,我考虑过创建一个角色和流派表,但这是必要的吗?