如何通过将该表分离为具有每个表的主键的倍数表来规范化该表?

问题描述 投票:0回答:2

由于标题和流派字段都有多个值,因此如何通过识别每个表的主键,将其重新设计为两个或多个第一范式的表。一点点洞察力将是一个很大的帮助。我是SQL新手。

我尝试通过添加另一列来分隔电影日期,并为每种电影类型类型分隔行。但是我不知道应该怎么把它分成几张桌子。

python sql r
2个回答
1
投票

建议的基本布局是这样的。显然,根据需要添加更多字段,但这是一个规范化的结构,允许电影,标题和流派之间有一对多的关系

表电影:

         MovieID  (pk)

表MovieTitle:

          TitleID (pk)
          MovieID (fk)

表MovieGenre:

          GenreID (pk)
          MovieID (fk)

0
投票

首先,你必须分析你在寻找什么。在例如:一部电影有很多类型,如果你有很多不同语言的标题,你可以得到很多种组合。

您需要设置实体。你的实体是什么?电影?这可以成为你的主要表:电影。 电影表有一些列 MovieID(PK)|标题(说出来的第一个标题)|描述 1 |简短描述或基本|详细描述

另一方面,你有secondarys表,如:titles_movies,genre_movies和genre_description 这个表有一些像这样的结构 title_movies ID(PK)|标题| MovieID(FK) 1 |等电影| 1

genre_description ID(PK)|描述 1 |喜剧 2 |行动 3 |等等

genre_movies ID(PK)| GenreID(FK)| MovieID(FK) 1 | 3(等)| 1

这可以是一种布局

© www.soinside.com 2019 - 2024. All rights reserved.