Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Конспект 2.doc
Скачиваний:
30
Добавлен:
09.08.2019
Размер:
5.97 Mб
Скачать

Лекция 13. Реляционная модель данных

По распространенности и популярности реляционные СУБД сегодня вне конкуренции. По сути, они фактически стали промышленным стан­дартом. В реляционной модели рассматриваются три аспекта данных — струк­тура данных, целостность данных и обработка данных.

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

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

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

Кортеж соответствует строке этой таблицы, а атрибут — столбцу. Ко­личество кортежей называется кардинальным числом, а количество атри­бутов степенью отношения.

Первичный ключ является уникальным идентификатором таблицы и представляет собой такой столбец или такую комбинацию столбцов, что в любой момент времени не существует двух строк, содержащих одинаковое значение в этом столбце или комбинации столбцов. Мно­жество всех возможных значений атрибута объекта называется доменом.

Каждый столбец таблицы имеет имя, которое обычно записывается в верхней части таблицы. Оно должно быть уникальным в таблице, однако различные таблицы могут иметь столбцы с одинаковыми именами. Любая таблица должна иметь, по крайней мере, один столбец. Порядок следова­ния столбцов в таблице определяется порядком следования их имен при ее создании, В отличие от столбцов, строки не имеют имен; порядок их следования в таблице не определен, а количество логически не огра­ничено.

В качестве примера рассмотрим отношения, формирующие БД ГРУЗООТПРАВИТЕЛИ / ГРУЗЫ (табл.1-3).

Таблица 1. Отношение ГРУЗООТПРАВИТЕЛИ

от#

ГРУЗООТПРАВИТЕЛЬ

ПУНКТ ОТПРАВЛЕНИЯ

ПУНКТ ПРИБЫТИЯ

ОТ1

ЗАВОД "СИГНАЛ"

С.-ПЕТЕРБУРГ

МОСКВА

ОТ2

КОМБИНАТ "МЕБЕЛЬ-

С.-ПЕТЕРБУРГ

МОСКВА

ОТ3

ШАХТА N 1

КЕМЕРОВО

ОМСК

Таблица 2. Отношение ГРУЗЫ

G#

НАЗВАНИЕ-ГРУЗА

ВЕС

G1

РАДИОАППАРАТУРА

1 Т

G2

МЕБЕЛЬ

0,5 Т

G3

УГОЛЬ

100Т

Таблица 3. Отношение ГРУЗООТПРАВИТЕЛИ-ГРУЗЫ

OG#

G#

ОТ#

OG1

Gl

ОТ1

OG2

G2

ОТ2

OG3

G3

ОТЗ

В отношении ГРУЗООТПРАВИТЕЛИ и в соответствующей таблице (табл. 1) четыре столбца-атрибута: {ОТ#, ГРУЗООТПРАВИТЕЛЬ, ПУНКТ_ОТПРАВЛЕНИЯ, ПУНКТ_ПРИБЫТИЯ} и три кортежа. Соответствен­но кардинальное число отношения равно 3, а степень отношения равна 4. Атрибут ОТ# является первичным ключом.

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

Последнее свойство является следствием того, что в каждой пози­ции пересечения столбца и строки в таблице должно располагаться точно одно значение, а не набор значений. Отношение, обладающее этим свойством, называется нормализированным или представленным в первой нормальной форме.

В реляционной модели есть два общих правила целостности, которые применяются к любой реляционной БД. Эти правила относятся к потенциальным ключам и к внешним ключам.

Выше были рассмотрены первичные ключи, которые являются част­ным случаем потенциального ключа. Пусть R — некоторое отношение. Тогда потенциальный ключ К для R — это подмножество множества атрибутов R, обладающее такими свойствами, как:

  1. уникальность: нет двух различных кортежей в отношении R с одинаковым значением К;

  2. неизбыточность: никакое из подмножеств К не обладает свойством уникальности.

Каждое отношение имеет по крайней мере один потенциальный ключ, так как не содержит одинаковых кортежей.

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

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

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

В приведенном правиле отсутствует описание механизмов обеспечения ссылочной целостности, которые выходят за рамки классической реляци­онной модели. К нарушению ссылочной целостности обычно приводят операции удаления и модификации записей одного отношения без учета необходимости удаления и модификации связанного с ним отношения (от­ношений). Поэтому вводятся дополнительные два правила внешних клю­чей: правило удаления и правило модификации. Для каждого из этих пра­вил предусмотрена одна из двух возможностей: ограничить (запретить) удаление/модификацию объекта ссылки внешнего ключа или каскадиро­вать, т.е. удалить как ссылающуюся, так и ссылочную запись (записи).

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

Основой обеспечения целостности модели является реляционная алгебра, состоящая из операторов, использующих отношения в качестве операторов и возвра­щающих отношения в качестве результата. Реляционная алгебра состоит из восьми основных операторов, которые можно разделить на две группы по четыре оператора в каждой: