-- Создаем базу данных (если нужно)
CREATE DATABASE GamesDB;
USE GamesDB;
-- 1. Таблица игроков (Первая сущность)
CREATE TABLE players (
id INT PRIMARY KEY AUTO_INCREMENT,
nickname VARCHAR(50) NOT NULL,
email VARCHAR(100) UNIQUE
);
-- 2. Таблица игр (Вторая сущность)
CREATE TABLE games (
id INT PRIMARY KEY AUTO_INCREMENT,
title VARCHAR(100) NOT NULL,
genre VARCHAR(50)
);
-- 3. Связующая таблица (Реализует отношение Многие-ко-Многим)
-- Один игрок может играть во много игр, и в одну игру могут играть много игроков.
CREATE TABLE player_games (
player_id INT,
game_id INT,
hours_played INT DEFAULT 0, -- Дополнительное поле (сколько часов наиграно)
PRIMARY KEY (player_id, game_id), -- Составной первичный ключ
FOREIGN KEY (player_id) REFERENCES players(id) ON DELETE CASCADE,
FOREIGN KEY (game_id) REFERENCES games(id) ON DELETE CASCADE
);