Новости
Документация
Download
Webboard
Поиск
FAQ/ЧаВо
Обратная связь




MySQL.RU - Webboard



Вернуться
Структура БД для музыкального каталога (hammet) 17/05/2007 - 12:47:23
      Re: Структура БД для музыкального каталога (Zoonman) 18/05/2007 - 17:04:34

> Original message text:
> From: hammet - 17/05/2007 - 12:47:23
> Subject:Структура БД для музыкального каталога
> -----------------
> Здравствуйте! Сегодня начинаю делать муз. каталог mp3.
> Начал продумывать структуру БД. Мне нужен совет человека, который уже далал подобный сайт.
>
> ну вот что имеется на данный момент:
>
>
> CREATE TABLE `songs` (
> `id` BIGINT( 20 ) UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY ,
> `title` VARCHAR( 255 ) NOT NULL ,
> `artist_id` BIGINT( 20 ) NOT NULL ,
> `album_id` BIGINT( 20 ) NOT NULL ,
> `genre_id` INT( 11 ) NOT NULL ,
> `comments` TEXT NOT NULL ,
> `url` VARCHAR( 512 ) NOT NULL ,
> `rating` INT( 11 ) NOT NULL ,
> `upload_date` DATE NOT NULL
> ) ENGINE = MYISAM ;
>
> CREATE TABLE `artists` (
> `id` BIGINT( 20 ) UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY ,
> `artist` VARCHAR( 255 ) NOT NULL ,
> `genre_id` INT( 11 ) NOT NULL
> ) ENGINE = MYISAM ;
>
> CREATE TABLE `albums` (
> `id` BIGINT( 20 ) UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY ,
> `album` VARCHAR( 512 ) NOT NULL ,
> `artist_id` BIGINT( 20 ) NOT NULL ,
> `year` YEAR NOT NULL ,
> `votes` INT( 11 ) NOT NULL DEFAULT '0'
> ) ENGINE = MYISAM ;
>
> CREATE TABLE `genres` (
> `id` INT( 11 ) UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY ,
> `genre` VARCHAR( 255 ) NOT NULL
> ) ENGINE = MYISAM ;
>
>
> Может будут замечания/предложения?
> спасибо.
>


From: Zoonman - 18/05/2007 - 17:04:34
Subject:Структура БД для музыкального каталога
-----------------
Относительно альбома. Надо добавить поля для обложки альбома и его описания. У артиста также может быть домашняя страница, порой один и тот же альбом имеет разные версии, вполне может быть в альбомах одни и те же треки, но их версии различаются.
В таблице треков (songs) должен быть размер файла (не надо лишний раз шерстить ФС). Также я бы хранил попытки скачивания в отдельной таблице, что бы делать актуальные выборки рейтинга. Просто файл раньше (год назад) скачали 1000 раз, а новинку за 2 последних дня только 10, и она не будет в рейтинге. Хотя актуальный рейтнг у нее выше. Относительно albums.year - выход альбома происходит всегда в какой-то день, поэтому надо использовать тип DATE.
И когда мало такой дополнительной на первый взгляд информации такая система довольно убожеская (посмотрите на зайцев.нет).
А еще необходима таблица с комментариями слушателей. Это позволяет другим ориентироваться по мнению.
Обязательно должны быть на сайте контекстные новости. Это очень удобно. И самое главное следите за новинками!


[Это сообщение - спам!]

Последние сообщения из форума

Уважаемые посетители форума MySQL.RU!
Убедительная просьба, прежде чем задавать свой вопрос в этом форуме, обратите внимание на разделы:
- ответы на наиболее часто задаваемые вопросы - FAQ
- раздел документация
- раздел поиск по сообщениям форума и документации
Также, старайтесь наиболее подробно указывать свою ситуацию (версию операционной системы, версию MySQL, версию программного обеспечения, по которому возникает вопрос, текст возникающих ошибок, и др.)
Помните, чем конкретнее Вы опишете ситуацию, тем больше шансов получить реальную помощь.
 Имя:
 E-mail:
 Тема:
 Текст:
Код подтверждения отправки: Code
31566



РЕКЛАМА НА САЙТЕ
  Создание сайтов | |