Реляционная целостность данных
Реляционная целостность данных рассматривается в двух аспектах — ключи отношения и реляционные ограничения целостности.
Первичным ключом (ключом отношения, ключевым атрибутом) называется атрибут отношения, однозначно идентифицирующий каждый из его кортежей. Ключ может быть простым и составным (сложным), т. е. состоять из нескольких атрибутов.
Каждое отношение обязательно имеет комбинацию атрибутов, которая может служить ключом. Таким образом, ее существование гарантирует то, что отношение — это множество, которое не содержит одинаковых кортежей. Во многих СУБД можно создавать отношения, не определяя ключи.
Иногда отношение имеет несколько комбинаций атрибутов, каждая из которых однозначно определяет все кортежи отношения. Такие комбинации атрибутов — это возможные ключи отношения и любой из них можно выбрать в качестве первичного. Если выбранный первичный ключ состоит из минимально необходимого набора атрибутов, то он является не избыточным.
Обычно ключи используют для:
- исключения дублирования значений в ключевых атрибутах (другие атрибуты в расчет не принимаются);
- упорядочения кортежей. Возможно упорядочение по возрастанию или убыванию значений всех ключевых атрибутов, а также смешанное упорядочение (по одним атрибутам возрастание, по другим — убывание);
- ускорения работы с кортежами отношения;
- организации связывания таблиц.
Если в отношении R1 имеется не ключевой атрибут A, значения которого являются значениями ключевого атрибута B другого отношения R2, то атрибут A отношения R1 является внешним ключом.
С помощью внешних ключей устанавливаются связи между отношениями. Реляционная модель накладывает на внешние ключи ограничение для обеспечения целостности данных — ограничение ссылочной целостности, т. е. каждому значению внешнего ключа должны соответствовать строки в связываемых отношениях.
Так как каждый атрибут связан с некоторым доменом, для множества допустимых значений каждого атрибута отношения определяют так называемые ограничения домена.
Кроме этого, для БД задаются два правила целостности, которые называются реляционными ограничениями целостности — ограничениями для всех допустимых состояний БД:
- правила целостности сущностей (отношений);
- правила ссылочной целостности.
Определитель NULL указывает на то, что значение атрибута в данный момент неизвестно или неприемлемо для данного кортежа. NULL не входит в область определения некоторого кортежа либо никакое значение еще не задано. Ключевое слово NULL представляет собой способ обработки неполных или необычных данных. NULL ни в коем случае нельзя отождествить как нулевое численное значение или заполненную пробелами текстовую строку (нули и пробелы — это некоторые значения; NULL — это отсутствие значения).
Целостность отношений — в базовом (основном) отношении ни один атрибут первичного ключа не может содержать отсутствующих значений, т. е. NULL-значений.
Ссылочная целостность — значение внешнего ключа отношения должно либо соответствовать значению первичного ключа базового отношения, либо задаваться определителем NULL.
Корпоративные ограничения целостности — дополнительные правила поддержки целостности данных, определяемые пользователями или администраторами БД [20,C.44-48].
Дата добавления: 2015-08-08; просмотров: 2195;