Вопрос проверяет знание ограничений (constraints) в базах данных, их типов и назначения для обеспечения целостности данных.
Констрейнты — это правила, которые ограничивают данные в таблицах БД для обеспечения их целостности. Основные типы: PRIMARY KEY, FOREIGN KEY, UNIQUE, NOT NULL, CHECK. Они предотвращают некорректные операции с данными.
Констрейнты (ограничения) — это механизм обеспечения целостности данных в реляционных базах данных.
Основные типы констрейнтов:
PRIMARY KEY — уникальный идентификатор строки:
Гарантирует уникальность и отсутствие NULL значений
Пример: id INT PRIMARY KEY
FOREIGN KEY — связь между таблицами:
Обеспечивает ссылочную целостность
Пример: FOREIGN KEY (user_id) REFERENCES users(id)
UNIQUE — уникальность значений в столбце:
Разрешает NULL значения (если не combined with NOT NULL)
Пример: email VARCHAR(255) UNIQUE
NOT NULL — запрет пустых значений:
Пример: name VARCHAR(100) NOT NULL
CHECK — проверка условий для значений:
Пример: age INT CHECK (age >= 0)
Пример создания таблицы с констрейнтами:
CREATE TABLE employees (
id INT PRIMARY KEY,
email VARCHAR(255) UNIQUE NOT NULL,
department_id INT,
salary DECIMAL(10,2) CHECK (salary > 0),
FOREIGN KEY (department_id) REFERENCES departments(id)
);Преимущества использования:
Гарантируют корректность данных
Предотвращают дублирование записей
Обеспечивают согласованность связанных данных
Упрощают логику приложения