Виды декомпозиций. Декомпозиция без потерь

         

Ключи


Ключ – идентификатор, по которому однозначно определяется картеж (строка) в отношении. Ключ – идентификатор, не содержащий внутри себя другого идентификатора.

Одно отношение может иметь несколько ключей. В качестве активного ключа выбирается только один, его называют первичным (активным, выделенным ключом; на схеме первичный ключ выделяется подчеркиванием), остальные ключи называют возможными.

Требования при выборе первичного ключа:

ü         Минимальный по длине (оптимальный вариант, когда ключ из одного атрибута);

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

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

Атрибут, входящий в ключ отношения (первичный или возможный), называется основным атрибутом. Идентификатор, содержащий избыточные атрибуты называется суперключом, суперключ не ключ.

Еще раз сформулируем дополнительные требования к ключам:

·         Ключи не должны содержать NULL признаков атрибутов.

·         Значение ключа не должно корректироваться в процессе жизни данных, или вероятность их корректировки должна быть очень мала.

·         Если отношение имеет несколько ключей, то предпочтение при выборе первичного ключа следует отдать ключу с меньшим количеством атрибутов.

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

Если в каком-то кортеже отсутствуют данные о значении атрибута, говорят, что этот атрибут допускает неопределенность (NULL). Признак NULL присваивается атрибуту, когда действительное значение не известно. NULL не эквивалентно ни нулевому значению, ни пустой строке, то есть это полная неопределенность.

Внешний ключ – это множество атрибутов, которые являются первичным ключом в другом отношении. Отношение, которое содержит внешний ключ, называется ссылающимся, а отношение, которое содержит соответствующий первичный ключ, называется ссылочным.



Содержание раздела