-- 1. Таблица СТРАНА
CREATE TABLE mdk0603_Country (
country_id INT PRIMARY KEY,
name VARCHAR(100) NOT NULL,
continent VARCHAR(50) NOT NULL
);
-- 2. Таблица ПРАВИТЕЛЬ
CREATE TABLE mdk0603_Ruler (
ruler_id INT PRIMARY KEY,
name VARCHAR(100) NOT NULL,
regnal_number VARCHAR(10), -- например, "I", "II", "III"
gender CHAR(1) NOT NULL CHECK (gender IN ('М', 'Ж')),
birth_date DATE NOT NULL,
death_date DATE -- NULL, если жив до сих пор
);
-- 3. Таблица ПЕРИОД_ПРАВЛЕНИЯ
CREATE TABLE mdk0603_Reign (
reign_id INT PRIMARY KEY,
ruler_id INT NOT NULL,
country_id INT NOT NULL,
title VARCHAR(100),
start_year INT NOT NULL,
end_year INT, -- NULL, если правит до сих пор
FOREIGN KEY (ruler_id) REFERENCES mdk0603_Ruler(ruler_id),
FOREIGN KEY (country_id) REFERENCES mdk0603_Country(country_id)
);