SQL music playlist database design

2019-08-14 05:23发布

I had a question about how to structure my tables for a database with songs and playlists. My initial thought was to create a table of playlists titles and id's and then a playlists songs table that holds the songs unique id and the playlist in which it belongs to.

The other plan was to create a new table for each playlist that gets created and store the song information inside each table for the playlist. The question is, would this be a good approach or is there some reason that creating these new tables would be bad for performance or any other reason? Thanks for the help!

2条回答
啃猪蹄的小仙女
2楼-- · 2019-08-14 05:48

How about something like this?

Songs:

id title length artist_id

Artists:

id name

Playlists:

id title user_id 

Playlists_Songs:

playlist_id song_id

Users:

id name email 
查看更多
小情绪 Triste *
3楼-- · 2019-08-14 05:53

In terms of relational design, you need two tables for playlists, one holding the playlistname (key, playlistname), one for the actual playlists (key,playlistkey,trackid) Table for tracks holding mp3 tag details (key, track title, artist key, album .... Etc) Table for Artists (key, name, band). You can break it down further applying the principle that you should not duplicate data for instance holding a playlistname in more than one table. By creating views, you knit all this together

However, if you are using android, this database already exists.

查看更多
登录 后发表回答