Constraints
База данных тоже проверяет правила
Constraint — это правило, которое база данных проверяет при изменении данных. Если новое значение нарушает ограничение, операция не должна тихо сохранить некорректную строку — СУБД отклоняет её.
CREATE TABLE users (
id INTEGER,
email VARCHAR(200) NOT NULL UNIQUE,
age INTEGER CHECK (age >= 0)
);
NOT NULL требует наличие значения, UNIQUE запрещает повторение одинаковых значений в соответствующем ограничении, а CHECK проверяет заданное логическое условие.
Почему правила лучше закреплять в базе
Приложение тоже может проверять данные, но база остаётся последней точкой хранения. Если критичное правило существует только в одном участке кода, другой сервис, скрипт или ошибочная команда могут его обойти. Ограничение делает правило частью самой схемы данных.
Ограничения описывают целостность данных, а не всю бизнес-логику.
Простые и устойчивые правила вроде обязательности значения или допустимого диапазона хорошо подходят для базы. Сложные бизнес-сценарии обычно остаются на уровне приложения.
Проверь себя
Разбор задания
Ментор знает решение и поможет тебе прийти к нему самостоятельно
Войди, чтобы использовать Ментора
Ментор учитывает текущую задачу и историю диалога.
Войти
Проверь важные нюансы и ответ после собственной попытки.
Войди, чтобы посмотреть решение
Решение и разбор доступны после авторизации.
Войти