我正在编写一个包含我家里所有 DVD 的数据库。
其中一个字段 actors
,我希望它是来自另一个表的一组值,该表正在存储 actors。因此,对于每部电影,我都想存储一个 Actor 列表,所有这些都是从 Actor 列表中选择的,取自不同的表。
这可能吗?我该怎么做呢?它基本上是一组外键。
我正在为 Django 应用程序 (python) 使用 MySQL 数据库,因此非常感谢 SQL 或 Python 中的任何提示。
我希望问题很清楚, 非常感谢。
最佳答案
像这样制作你的表格:
Movies
MovieID int auto increment/identity PK
MovieTitle
MovieDescription
etc...
Actors
ActorID int auto increment/identity PK
ActorName
DateOfBirth
etc...
MovieActors
MovieID PK and FK
ActorID PK and FK
RoleName
etc...
不要在 Movies 表的单个字段中存储多个 Actors,而是将它们分成 MovieActors 表中的单独行。
如果您将所有参与者组合在一个字段中,这将使编写查询变得困难。例如,您需要进行字符串操作才能查询 Actor X 所在的所有电影。
关于python - 对表中的值使用集合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2579866/