存储网站的用户音乐播放列表

时间:2011-05-17 23:25:27

标签: php mysql database web

我想创建一个音乐播放网站,用户可以在其中保存歌曲的播放列表,以便稍后重新生成。我是sql的新手,但似乎数据库意味着保存固定长度的变量,而用户生成的播放列表则是任意长度。我有几种方法可以解决这个问题:

  • 单独的表格(可能是每个播放列表的另一个表格?)
  • XML

我觉得我很容易失去第三种方式。我在php中这样做,但如果有一个使用django的超级简单方法我也会感兴趣。

2 个答案:

答案 0 :(得分:2)

2张表:

  1. 播放列表。字段:id |标题| owner_id(对user.id的引用)
  2. 乐曲。字段:id |标题|长度| playlist_id(引用playlist.id)

答案 1 :(得分:2)

这个怎么样:

Playlists: list_id|title|owner_id
Songs: song_id|title|artist|album|year|length|style|whatevereelseyouwnattoadd
Songs_In_Lists: song_id|list_id

第三张表只是将歌曲与播放列表联系起来。 如果歌曲进入多个播放列表,则歌曲信息会有很多冗余。 第三个表的主键将在两列上。同一首歌只进入同一个列表一次,所以效果很好。