Database design 这个数据库模式实用吗?
作为对上一个问题的后续: 我现在已经创建了此设置:Database design 这个数据库模式实用吗?,database-design,normalization,database-normalization,Database Design,Normalization,Database Normalization,作为对上一个问题的后续: 我现在已经创建了此设置: 我的问题是,我用这种方法走对了吗?我使用的设置是否有明显的错误,或者我缺少的关于规范化的概念?我正在尝试一种实用的方法,这种方法适用于现实世界的场景,所以如果有更好的方法来配置这个数据库,我很乐意听到 添加以下表格如何: 国家 评级国家 评级 博弈国家 这样,如果您添加一个国家或评级类型,您就不必更改表结构。您可能需要一个平台数据表,它允许您跨多个平台关联游戏。这可能是一个有意识的选择,没有这个,但我想我会提到它 另一件事是,对于发布日期,
我的问题是,我用这种方法走对了吗?我使用的设置是否有明显的错误,或者我缺少的关于规范化的概念?我正在尝试一种实用的方法,这种方法适用于现实世界的场景,所以如果有更好的方法来配置这个数据库,我很乐意听到 添加以下表格如何:
这样,如果您添加一个国家或评级类型,您就不必更改表结构。您可能需要一个平台数据表,它允许您跨多个平台关联游戏。这可能是一个有意识的选择,没有这个,但我想我会提到它 另一件事是,对于发布日期,我假设您有一个单独的发布日期表,以便您可以按发布日期选择所有。如果这不是你计划的一部分,那么你可能不需要额外的桌子,只需要将它包含在游戏模型中
另一个要考虑的是,游戏经常在不同的国家发布在不同的日期。由于您已经将多个国家纳入架构以进行评级,或许您可以考虑添加国家表和删除国家特定的评级表。然后您可以有一个单独的评级表,每个评级都有一个国家作为外键。然后,您只需创建一个ratings_数据表,将游戏和各种评级关联起来。您还可以使用将国家id添加到发布日期数据表中。这种方法将允许您扩展和添加更多的国家,而无需每次更改您的模式。平台是一个敏感的主题;我不知道如何处理在多个平台上发布的游戏,因为它们通常在不同的日期发布,并且具有不同的属性。发布日期也是有意识的,因为我们可能会增加更多的国家,尽管我认为四大板块(非盟、英国、日本、美国)是唯一有人真正监控的板块。关于评级表的观点很好,我不知道我到底在想什么。是的,我认为发布日期表可能是有意的,但我想提一下。因为你的计划包括这个表,我肯定会把国家和发布日期联系起来(在发布日期数据表中,所以你会有三个外键)。非常有效的一点,我在最后一个想法是在制作这个模式的最后把评级插入。我必须实现这一点!