/>
Рисунок 2 - Загальна архітектура програми.
. Інтерфейс користувача
. 1 Сторінка реєстрації
Малюнок 3 - Сторінка реєстрації.
. 2 Головна сторінка
Малюнок 4 - Головна сторінка.
. 3 Сторінка пошуку
Малюнок 5 - Сторінка пошуку.
база дані каталог музичний
3.4 Додаток для роботи з базами даних
Малюнок 6 - Додаток для роботи з БД.
Додаток А
SQL-скрипти створення табліцSCHEMA IF NOT EXISTS `music` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;- ----------------------------------
- Table `music`.`artists`
- ----------------------------------------------------- TABLE IF NOT EXISTS `music`.`artists` (
`id` INT NOT NULL AUTO_INCREMENT,
`name` VARCHAR (32) NOT NULL, PRIMARY KEY (` id`));
- -----------------------------------------------------
- Table `music`.`albums`
- ----------------------------------------------------- TABLE IF NOT EXISTS `music`.`albums` (
`id` INT NOT NULL AUTO_INCREMENT,
`name` VARCHAR (32) NOT NULL,
`released` DATE NOT NULL, KEY (` id`));
- -----------------------------------------------------
- Table `music`.`songs`
- ----------------------------------------------------- TABLE IF NOT EXISTS `music`.`songs` (
`id` INT NOT NULL AUTO_INCREMENT,
`name` VARCHAR (64) NOT NULL,
`duration` INT NOT NULL, KEY (` id`));
- -----------------------------------------------------
- Table `music`.`users`
- ----------------------------------------------------- TABLE IF NOT EXISTS `music`.`users` (
`id` INT NOT NULL AUTO_INCREMENT,
`login` VARCHAR (16) NOT NULL,
`password` VARCHAR (32) BINARY NOT NULL,
`name` VARCHAR (16) NOT NULL, KEY (` id`), INDEX `login_UNIQUE` (` login` ASC));
- -----------------------------------------------------
- Table `music`.`album_artists`
- ----------------------------------------------------- TABLE IF NOT EXISTS `music`.`album_artists` (
`album` INT NOT NULL,
`artist` INT NOT NULL, KEY (` album`, `artist`),` fk_album_artists__albums_idx` (`album` ASC),` fk_album_artists__artists_idx` (`artist` ASC),` fk_album_artists__albums`KEY (`album`)` music`.`albums` (`id`) DELETE NO ACTIONUPDATE NO ACTION,` fk_album_artists__artists`KEY (`artist`)` music`.`artists` (`id`) DELETE NO ACTIONUPDATE NO ACTION) ;
- -----------------------------------------------------
- Table `music`.`album_songs`
- ----------------------------------------------------- TABLE IF NOT EXISTS `music`.`album_songs` (
`album` INT NOT NULL,
`song` INT NOT NULL, KEY (` album`, `song`),` fk_album_songs__albums_idx` (`album` ASC),` fk_album_songs__songs_idx` (`song` ASC),` fk_album_songs__albums`KEY (`album`)` music`.`albums` (`id`) DELETE NO ACTIONUPDATE NO ACTION,` fk_album_songs__songs`KEY (`song`)` music`.`songs` (`id`) DELETE NO ACTIONUPDATE NO ACTION) ;
- -----------------------------------------------------
- Table `music`.`ratings`
- ----------------------------------------------------- TABLE IF NOT EXISTS `music`.`ratings` (
`user` INT NOT NULL,
`song` INT NOT NULL,
`rating` TINYINT UNSIGNED NOT NULL, KEY (` user`, `song`),` fk_ratings__users_idx` (`user` ASC),` fk_ratings__songs_idx` (`song` ASC),` fk_ratings__users` KEY (`user`)` music`.`users` (`id`) DELETE NO ACTIONUPDATE NO ACTION,` fk_ratings__songs`
FOREIGN KEY (`song`) REFERENCES` music`.`songs` (`id`) DELETE NO ACTIONUPDATE NO ACTION);
- -----------------------------------------------------
- Table `music`.`genre`
- ----------------------------------------------------- TABLE IF NOT EXISTS `music`.`genre` (
`id` INT NOT NUL...