Музыкальная библиотека MySQL база данных
Мне нужна помощь в создании таблицы(таблиц) для музыкальной базы данных в 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.
в основном все, что связано с организацией цифровой музыки. Я новичок в базах данных и у меня есть некоторые идеи. Но если я собираюсь учиться, то должен научиться делать это правильно.
любые мысли о том, как спроектировать мою таблицу(ы), будут потрясающий.
5 ответов
что-то вроде этого будет хорошо для начала. Он определяет таблицу для исполнителей, альбомов (с ключами в исполнителях и жанрах), треков (с ключами в альбомах) и жанров.
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
Я предлагаю следующую структуру базы данных:
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 }
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 ) )
схема базы данных - это выкладка таблиц и установление отношений между этими таблицами.
вы уже определили многих кандидатов таблицы: трек, исполнитель, альбом
тогда вам нужны отношения: исполнитель может иметь много альбомов, альбом может иметь много треков.
с этими несколькими простыми таблицами и отношениями на месте у вас уже есть небольшая база данных.
проверить http://www.freedb.org/en/. Ранее cddb.org это бесплатная музыкальная база данных. Вы можете загрузить всю базу данных из одной из их ссылок и посмотреть, как они это сделали.