Ограничения в базе данных — это правила, применяемые на уровне схемы для автоматического обеспечения качества данных, предотвращая сохранение некорректных или несогласованных данных с самого начала.
NOT NULL — гарантирует, что колонка всегда содержит значение; пустые или неопределённые записи отклоняютсяUNIQUE — гарантирует, что никакие две строки не имеют одинакового значения в колонке, предотвращая дубликатыPRIMARY KEY — объединяет NOT NULL и UNIQUE для уникальной идентификации каждой строки в таблице; в каждой таблице может быть только одинFOREIGN KEY — обеспечивает ссылочную целостность, гарантируя, что значение в одной таблице соответствует существующему значению в другой таблицеCHECK — проверяет, что значения колонки удовлетворяют пользовательскому логическому условиюCREATE TABLE orders (
order_id INT PRIMARY KEY,
customer_id INT NOT NULL,
email VARCHAR(100) UNIQUE,
status VARCHAR(20) CHECK (status IN ('pending', 'shipped', 'delivered')),
FOREIGN KEY (customer_id) REFERENCES customers(id)
);
Применение этих правил на уровне базы данных, а не только на уровне кода приложения, даёт несколько преимуществ:
Ограничения служат первой линией защиты целостности данных. Правильное их использование гарантирует, что база данных остаётся надёжным источником истины, что критично для отчётности, логики приложения и поддержания связей между таблицами.
Ограничение PRIMARY KEY можно применять к нескольким столбцам в таблице, позволяя каждому столбцу служить уникальным идентификатором для различных сущностей в одной таблице.
Новый — ещё не проверен сообществом
Вы