Некоторые ограничения целостности видны из описания предметной области в виде ER-модели.
1. Ограничение на уникальность - уникальные идентификаторы объектов являются ключами таблиц, соответствующих этим объектам. Если идентификаторов несколько, то для СУБД, поддерживающих концепцию ключа, нужно определить первичный ключ (Primary Key) и вероятные ключи (Alternate Key, Unique).
2. Между уникальным идентификатором объекта и полями, соответствующими единичным свойствам объекта, существует функциональная зависимость.
3. Если объекты связаны между собой, то соответствующие таблицы БД могут иметь ограничение целостности по связи.
Тип связи между объектами (1:1, 1:М, М:М) определяет, что будет первичным, а что - внешним ключом в этих связях. Если отношение между объектами 1:М, то очевидно, что первичным будет ключ основной таблицы (объект, который стоит со стороны единичной связи), внешним - соответствующее ему поле в таблице, отображающей объект, стоящий на стороне множественной связи.
В случае, если связь 1:1, объекты относительно связи являются равноправными, и для определения, какой из файлов БД будет играть ведущую роль, необходимо рассматривать дополнительные характеристики. Например, если класс членства с одной стороны связи необязательный, а с другой - обязательный, то идентификатор объекта, имеющего необязательный класс членства, помещается в таблицу, соответствующую объекту с обязательным классом членства, и именно он будет внешним ключом.
При наличии связи М:М в базу данных вводится дополнительная связующая таблица. Между ней и таблицами, соответствующими исходным объектам, существуют ограничения целостности по связи. Внешними ключами будут идентификаторы связанных объектов, помещенные в связующей таблице.
предыдущаяследующая