Ответ
Первичный ключ (Primary Key, PK) — это ограничение, накладываемое на столбец или группу столбцов таблицы, которое гарантирует уникальность и однозначную идентификацию каждой строки (записи).
Основные свойства:
- Уникальность: В таблице не может быть двух строк с одинаковым значением первичного ключа.
- Отсутствие NULL: Значения в столбцах первичного ключа не могут быть NULL.
- Стабильность: Значение PK, как правило, не должно изменяться в течение жизни строки.
- Минимальность: PK должен состоять из минимального набора столбцов, необходимых для уникальной идентификации.
Типы первичных ключей:
- Простые (Simple): Состоят из одного столбца (наиболее распространенный вариант).
- Составные (Composite): Состоят из двух и более столбцов. Уникальность обеспечивается комбинацией их значений.
Примеры создания в SQL:
-- Простой первичный ключ при создании таблицы
CREATE TABLE Users (
user_id INT PRIMARY KEY, -- Столбец user_id - PK
username VARCHAR(50) NOT NULL,
email VARCHAR(100) UNIQUE
);
-- Составной первичный ключ
CREATE TABLE OrderItems (
order_id INT NOT NULL,
product_id INT NOT NULL,
quantity INT,
PRIMARY KEY (order_id, product_id) -- PK из двух столбцов
);
-- Добавление первичного ключа к существующей таблице
ALTER TABLE Employees ADD CONSTRAINT pk_emp_id PRIMARY KEY (employee_id);
Практическое значение:
- Связи между таблицами: На первичный ключ ссылается внешний ключ (Foreign Key) другой таблицы, что обеспечивает целостность данных.
- Индексация: Для PK автоматически создается уникальный индекс (чаще всего кластеризованный), что значительно ускоряет поиск по ключу и операции JOIN.
- ORM: В таких фреймворках, как Entity Framework (C#) или Hibernate (Java), PK часто используется для отслеживания состояния сущностей (Entity State).
Видео-ответы
▶
▶
▶
▶
▶
▶
▶
▶
▶