我需要一些帮助来为MySQL中的音乐数据库构建表格。我不确定如何将这些信息列在表格中。
以下是我希望存储在数据库中的信息。
Artist Name
Album Name
Release Date
Genre
Picture URL (album artwork)
Track Number
Trank Name
Track Playtime
Lyric (optional, But would like to have it someday)
etc.
基本上与组织数字音乐有关。我是数据库的新手,我有一些想法。但如果我要学习,我也可以学习正确的方法。
关于如何设计我的桌子的任何想法都会很棒。
答案 0 :(得分:16)
这样的事情开始会很好。它为艺术家,专辑(带有艺术家和流派的键),曲目(键入专辑)和流派指定了一个表格。
Table artists
----
id (primary key),
name
description
years_active
otherinfo (whatever you need)
Table albums
----
id (primary key)
artistid (foreign key to artists table)
name,
releasedate
genreid (foreign key to genres table)
picture
Table tracks
----
id (primary key)
albumid (foreign key to albums table)
name
override_artist (overrides album artist if not null)
playtime
lyric
otherstuff as needed
Table genres
----
id (primary key)
name
description
答案 1 :(得分:2)
我建议使用以下数据库结构:
artist { id, name }
genre { id, name }
album { id, name, artist_id, release_date, genre_id, picture_url }
track { id, album_id, number, name, playtime, lyrics }
答案 2 :(得分:1)
Artist ( ArtistID INT PRIMARY KEY, ArtistName )
Genre ( GenreID TINYINT PRIMARY KEY, GenreDescription )
Album ( AlbumID INT PRIMARY KEY, ArtistID INT, GenreID INT ReleaseDate )
AlbumArt ( AlbumArtID INT PRIMARY KEY, AlbumID INT, AlbumArtPath )
Track ( AlbumID INT, TrackNumber INT, TrackName, PlayTime, Lyrics , PRIMARY KEY ( AlbumID, TrackNumber ) )
答案 3 :(得分:1)
数据库原理图是关于布置表格并建立这些表格之间的关系。
您已经确定了许多候选人表:曲目,艺术家,专辑
然后你需要关系:艺术家可以有很多专辑,专辑可以有很多曲目。
通过这些简单的表格和关系,您已经拥有了一个小型数据库。
答案 4 :(得分:0)
结帐http://www.freedb.org/en/。以前是cddb.org,它是一个免费的音乐数据库。您可以从其中一个链接下载整个数据库,看看他们是如何完成的。