Junior — Middle
Care este diferența dintre crearea unui index unic și definirea unei chei primare într-o bază de date?
sobes.tech AI
Răspuns de la AI
Первичный ключ (Primary Key) — это ограничение, которое однозначно идентифицирует каждую запись в таблице. Он автоматически подразумевает уникальность и не допускает NULL значений. В таблице может быть только один первичный ключ.
Уникальный индекс (Unique Index) обеспечивает уникальность значений в одном или нескольких столбцах, но в отличие от первичного ключа, может допускать NULL значения (в зависимости от СУБД) и в таблице может быть несколько уникальных индексов.
Основные отличия:
- Первичный ключ — уникален, не допускает NULL, один на таблицу, служит основным идентификатором.
- Уникальный индекс — обеспечивает уникальность, может допускать NULL, может быть несколько на таблицу, используется для обеспечения уникальности данных, но не обязательно для идентификации.
Пример создания первичного ключа и уникального индекса в SQL:
CREATE TABLE users (
id INT PRIMARY KEY,
email VARCHAR(255) UNIQUE
);
Здесь id — первичный ключ, а email — уникальный индекс.