Ответ
В SQL используются следующие основные типы ключей:
- Первичный ключ (Primary Key): Уникально идентифицирует каждую запись в таблице. Не может быть
NULL. Например,idпользователя. - Внешний ключ (Foreign Key): Создает связь между двумя таблицами. Это поле (или набор полей) в одной таблице, которое ссылается на первичный ключ в другой. Обеспечивает целостность данных.
- Уникальный ключ (Unique Key): Гарантирует, что все значения в столбце (или комбинации столбцов) различны. В отличие от первичного ключа, может содержать одно значение
NULL(зависит от СУБД). - Кандидатный ключ (Candidate Key): Столбец или набор столбцов, которые могли бы стать первичным ключом, то есть уникально идентифицируют запись.
- Составной ключ (Composite Key): Первичный или уникальный ключ, состоящий из двух и более столбцов.
Пример создания таблиц с ключами:
CREATE TABLE Departments (
dept_id INT PRIMARY KEY,
dept_name VARCHAR(100) UNIQUE
);
CREATE TABLE Employees (
emp_id INT PRIMARY KEY,
emp_name VARCHAR(100),
dept_id INT,
CONSTRAINT fk_dept FOREIGN KEY (dept_id) REFERENCES Departments(dept_id)
);