← К оглавлению занятия
⚡ Кратко
📚 Подробно
⚡ Минимум
PRIMARY KEY — уникальный идентификатор строки.
FOREIGN KEY — ссылка на PK другой таблицы.
1:1, 1:N, M:N — типы связей.
M:N требует промежуточной таблицы.
Ограничения ключей
Конструкция Назначение Пример
PRIMARY KEYУникальный идентификатор id INT PRIMARY KEY
FOREIGN KEYСвязь с другой таблицей FOREIGN KEY (customer_id) REFERENCES customers(id)
NOT NULLЗапрет NULL name VARCHAR(100) NOT NULL
UNIQUEУникальность значений email VARCHAR(255) UNIQUE
ON DELETE CASCADEУдаление связанных строк ON DELETE CASCADE
ON DELETE SET NULLОбнуление внешнего ключа ON DELETE SET NULL
Типы связей
Связь Как реализуется Пример
1:1 FK с уникальным ограничением users ↔ user_profiles
1:N FK в дочерней таблице customers → orders
M:N Промежуточная таблица с двумя FK orders ↔ products через order_details
Создание связанных таблиц
CREATE TABLE customers (
id INT PRIMARY KEY AUTO_INCREMENT,
company_name VARCHAR(255) NOT NULL
);
CREATE TABLE orders (
id INT PRIMARY KEY AUTO_INCREMENT,
customer_id INT NOT NULL,
order_date DATE,
FOREIGN KEY (customer_id) REFERENCES customers(id)
ON DELETE RESTRICT
ON UPDATE CASCADE
);
Полный справочник
→ Справочник SQL