Ограничения совокупности допустимых значений в базе данных
Домен – общая совокупность допустимых значений (упрощенно – тип данных)
Ограничение – булевы функции, которые накладываются на данные, хранящиеся в БД.
Виды ограничений:
1. Уникальность: в некоторых атрибутах данные должны быть уникальны в каждом кортеже, но могут быть и пустыми.
2. Условие первичного ключа: требует не только уникальности, но и недопустимость пустых значений (для связи между таблицами).
3. Условие внешнего ключа: обязательное совпадение с первичным ключом.
4. Условие проверки: ограничение значений, содержащихся в отношении (области значений, запрет значения NULL, ограничение проверки check, которое используется при вводе данных, специальные ограничения, накладываемые областью применения БД).
5. Утверждения: накладываются на содержимое нескольких таблиц или целых БД.
Ограничения являются кодами на SQL, про именованы и хранятся в СУБД. Лучше самим про именовать ограничения, чтобы проще было проследить ошибки.
При изменении данных в таблице возможны нарушения. Отложные нарушения: в течении нескольких шагов возможны нарушения, но в целом, между первым и последним шагом, нарушений нет.
Домен – именованное множество скалярных значений одного типа. Каждый атрибут может быть определен только на одном домене. Фактически домен – пользовательский тип данных, полученный из стандартного с ограничениями значения, начальным значением, возможностью отложить проверку на ограничения. Домены ускоряют процесс работы с БД.