/
ssstrekoza
/
Work_with_SQL
Обзор
Документация
Войти
/
ssstrekoza
/
Work_with_SQL
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
main
music_database.sql
54 строки
2 KB
Elena Dekho
Initial commit
25 сен 2025, 01:33
25 сен 2025, 01:33
92797bc
Код
Авторство
О чём код?
-- Жанры CREATE TABLE IF NOT EXISTS genre ( id SERIAL PRIMARY KEY, genre_name VARCHAR(100) NOT NULL ); -- Исполнители CREATE TABLE IF NOT EXISTS performer ( id SERIAL PRIMARY KEY, performer_name VARCHAR(150) NOT NULL ); -- Альбомы CREATE TABLE IF NOT EXISTS album ( id SERIAL PRIMARY KEY, album_name VARCHAR(200) NOT NULL, release_year SMALLINT NOT NULL CHECK (release_year >= 1800 AND release_year <= 2100) ); -- Треки CREATE TABLE IF NOT EXISTS track ( id SERIAL PRIMARY KEY, track_name VARCHAR(250) NOT NULL, duration INTEGER NOT NULL CHECK (duration > 0), album_id INTEGER NOT NULL REFERENCES album(id) ); -- Сборники CREATE TABLE IF NOT EXISTS collection ( id SERIAL PRIMARY KEY, collection_name VARCHAR(250) NOT NULL, release_year SMALLINT NOT NULL CHECK (release_year >= 1800 AND release_year <= 2100) ); -- Связь жанров и исполнителей CREATE TABLE IF NOT EXISTS genre_performers ( id SERIAL PRIMARY KEY, genre_id INTEGER NOT NULL REFERENCES genre(id), performer_id INTEGER NOT NULL REFERENCES performer(id) ); -- Связь альбомов и исполнителей CREATE TABLE IF NOT EXISTS album_artists ( id SERIAL PRIMARY KEY, album_id INTEGER NOT NULL REFERENCES album(id), performer_id INTEGER NOT NULL REFERENCES performer(id) ); -- Треки в сборниках CREATE TABLE IF NOT EXISTS tracks_in_collections ( id SERIAL PRIMARY KEY, track_id INTEGER NOT NULL REFERENCES track(id), collection_id INTEGER NOT NULL REFERENCES collection(id) );