Ограничения целостности баз данных

Материал из Циклопедии
Перейти к навигации Перейти к поиску

Ограничения целостности баз данных — это специальные средства в базах данных, главное назначение которых — не допустить попадания в базу ошибочных данных, например — тридцатый день в феврале или восьмой день недели.

Категории ограничений[править]

Все ограничения целостности можно разделить на четыре категории:

  • Ограничение на значение столбцов
  • Ссылочная целостность
  • Доменная целостность
  • Целостность сущностей

Ограничение на значение столбцов[править]

Первичный ключ (primary key)[править]

Используется для обеспечения уникальности данных в столбцах и, в основном, для обеспечения ссылок на другие таблицы посредством связывания их внешними ключами.

Внешний ключ (foreign key)[править]

Применяется вместе с определённым раннее первичным ключом или же ограничением уникальности (unique) в связанной таблице. Условие на значение внешнего ключа одной таблицы ставит в соответствие один или несколько столбцов другой таблицы.

Ограничение уникальности (unique)[править]

Назначается чтобы запретить повторение значений в столбце таблицы. Для столбца, на котором определено ограничение первичного ключа, не может быть определено ограничение уникальности, так как уникальный индекс данного столбца уже создан.

Проверочное ограничение (check)[править]

Устанавливает, какие значения может хранить столбец. Это ограничение, например, можно использовать для столбца, хранящего номера квартир в многоквартирном доме.

Ссылочная целостность[править]

Ссылочная целостность обеспечивается системой первичных и внешних ключей. Этими средствами можно гарантировать, что у нас не будет ссылок на несуществующие объекты таблицы.

Доменная целостность[править]

Отвечает за то, чтобы в соответствующих полях базы данных были соответствующие значения. Например, номер телефона, как правило, обозначается цифрами, а имя или фамилия — буквами. В базах данных такая целостность зачастую обеспечивается запретом пустых значений (NOT NULL), триггерами, ключами а так же хранимыми процедурами.

Целостность сущностей[править]

Заключается в том, что любое отношение должно обладать первичным ключом или проверкой уникальности. Иными словами, главная задача целостности сущностей — сделать так, чтобы данные об одном объекте (сущности) не попали в базу данных дважды, так как при несоблюдении данного ограничения в базе данных может храниться противоречивая информация об одном объекте. Поддержание целостности сущностей осуществляется системой управления базой данных (СУБД).

Литература[править]

  • «Системы баз данных. Полный курс» — Гектор Гарсиа-Молина, Джеффри Ульман, Дженнифер Уидом
  • «Введение в системы баз данных» — Крис Дж. Дейт

Ссылки[править]