Назад к вопросам
Junior
198
questionbank
Какие существуют типы ключей в таблицах базы данных?
Sobes Copilot
Получайте ответы в реальном времени
Ответ от нейросети
sobes.tech AI
Существует несколько основных типов ключей:
PRIMARY KEY: Уникально идентифицирует каждое поле в таблице. В таблице может быть только один первичный ключ.FOREIGN KEY: Устанавливает связь между двумя таблицами, ссылаясь на первичный ключ в другой таблице. Поддерживает целостность данных.UNIQUE KEY: Гарантирует уникальность значений в столбце или группе столбцов, но, в отличие от первичного ключа, может содержать NULL (если это разрешено определением столбца).CANDIDATE KEY: Любой столбец или набор столбцов, которые могут однозначно идентифицировать строку в таблице. Первичный ключ является одним из кандидатских ключей.SUPER KEY: Набор одного или нескольких столбцов, которые однозначно идентифицируют строку в таблице. Включает в себя кандидатские ключи, но может содержать и дополнительные столбцы, которые не требуются для уникальности.COMPOSITE KEY: Ключ, состоящий из двух или более столбцов, взятых вместе для уникальной идентификации строки. Это может быть первичный, внешний или уникальный ключ.
-- Пример таблицы с различными типами ключей
CREATE TABLE Users (
user_id INT PRIMARY KEY, -- Первичный ключ
username VARCHAR(50) UNIQUE, -- Уникальный ключ
email VARCHAR(100),
city_id INT,
-- Внешний ключ, ссылающийся на таблицу Cities
FOREIGN KEY (city_id) REFERENCES Cities (city_id)
);
CREATE TABLE Cities (
city_id INT PRIMARY KEY,
city_name VARCHAR(50)
);