【问题标题】:Multiple Column Confusion多列混淆
【发布时间】:2016-01-13 00:50:16
【问题描述】:

我正在开发一个基于网络的音乐应用程序。我对 MySQL 列感到困惑。

问题是这样的: 我有专辑表: 专辑编号 专辑名 专辑年 现在的问题是:一张专辑可以包含多个曲目(由 track_id 标识)。现在如何在专辑表中存储多个曲目 ID? 我是 MySQL 新手。

【问题讨论】:

  • 您可能会从基本的关系数据库教程或 SQL 教程中受益(尝试this。您的问题的答案是您不会将专辑和曲目存储到同一张表中。它们的性质是不同,因此它们属于两个单独的表。

标签: mysql


【解决方案1】:

您必须创建另一个表,我们将其命名为album_has_tracks。 结构如下:

album_id    track_id
       1           1
       1           2
       1           3
       2           4
       2           5
       2           6

那被命名为relations,这就是重点之一,MySQL 被命名为relational databasealbum_idtrack_id 都是 foreign keys 并用它们的 id 表示列。之后,要获取曲目的数据,您必须使用JOIN。这就是你必须阅读的基础知识。

我建议你阅读一些关于关系数据库的基础知识,例如here

【讨论】:

  • 很高兴为您提供帮助并在学习关系数据库基础知识方面获得乐趣
【解决方案2】:

您需要找到一些有关关系数据库设计的教程。

您不会将曲目存储在专辑表中,而是会创建一个专辑曲目表,例如 track_id、album_id、track_name

tracks 表中的album_id 将被设置为链接到专辑表的外键,您可以将其在track 条目中的值设置为专辑表中匹配的album_id。

【讨论】:

  • 你的回答有点理论,但我理解你的意思,感谢你的努力和时间。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-12-29
  • 1970-01-01
  • 2015-01-16
  • 2016-03-05
  • 2021-05-22
  • 2017-02-10
  • 1970-01-01
相关资源
最近更新 更多