Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Базы данных - 2015-06-22__ 1к.doc
Скачиваний:
2
Добавлен:
01.07.2025
Размер:
1 Мб
Скачать
☆

Реляционная модель

Определение

Реляционная модель данных основывается на математических принципах, вытекающих непосредственно из теории множеств и логики предикатов. Эти принципы впервые были применены в области моделирования данных в конце 1960-х гг. доктором Е.Ф. Коддом, в то время работавшим в IBM, а впервые опубликованы - в 1970 г. [1].

Элементами описания реляционной модели данных на концептуальном уровне являются отношения, сущности, атрибуты, домены и связи

Пусть некоторая сущность предметной области описывается при помощи следующих атрибутов:

d1, d2, …, dn

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

d1 D1

d2 D2

…

dn Dn

Тогда по определению отношение R, описывающее некоторую сущность при помощи атрибутов d1, d2, …, dn есть множество упорядоченных кортежей вида:

<d1, d2, …, dn>

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

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

  • все данные представляются в виде отношений;

  • Значения всех атрибутов в отношении являются скалярными. Это означает, что в любом кортеже для каждого атрибута существует одно и только одно значение;

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

Например. Предметная область лабораторного практикума включает объект (сущность) ГРУЗ, который перевозит судно. Этот объект может быть описан при помощи отношения:

Груз (Номер, Тип, Вес, Трюм, Код)

Сведения о доменах атрибутов отношения приведены в таблице:

Атрибут

Домен

Номер

Множество всех возможных номеров контейнеров

Тип

Множество видов грузовых единиц, для перевозки которых используется судно

<20”, 40”, R20”>

Вес

Множество возможных значений веса грузовых единиц

Трюм

Множество, состоящее из номеров трюмов в которые на судне могут быть загружены контейнеры и роллтрейлеры

<1, 2, 3, 4>ножества, состоящее из номеров трюмов. ых единицторых используется судно

ность) ГРУЗ, который переводит судно.порядок следовани

Код

Множество, состоящее из кодов, которые присвоены опасным грузам различных классов

Примеры возможных кортежей отношения:

<MMMU1234; 20”; 13,5; 2;1>

<SZDU7891;40”;20,1;1;1.1>

<ABCD1213;R20”;15;2;8>

Удобным графическим представлением для понятия отношение является таблица. Кортежи отношения ГРУЗ, приведенные в качестве примера выше, в табличной форме могут быть представлены в виде:

Номер

Тип

Вес

Трюм

Код

MMMU1234

20”

13,5

2

1

SZDU7891

40”

20

1

1.1

ABCD1213

К20”

15,2

2

8

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

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

  • каждый элемент таблицы — один элемент данных

  • все столбцы в таблице однородные, то есть все элементы в столбце имеют одинаковый тип (числовой, текстовый, дата, время и т. д.)

  • каждый столбец имеет уникальное имя

  • одинаковые строки в таблице отсутствуют

  • порядок следования строк и столбцов может быть произвольным

ВНИМАНИЕ! Далее в пособии для описания реляционной модели будет использоваться терминология «таблиц», а именно:

Отношение = таблица

Кортеж = строка (запись)

Атрибут = поле

Первичный ключ (primary key) - такое поле (простой ключ) или строковое выражение, образованное из значений нескольких полей (составной ключ), которое однозначно идентифицирует каждую строку в таблице.

Например, очевидно, что в таблице ГРУЗ первичным ключом может быть поле «Номер» (поскольку каждый контейнер имеет уникальный номер). Таким образом указав какой –либо номер контейнера, например, ANCO24342340, мы найдем в таблице ровно одну запись, в которой поле "Номер" будет иметь указанное значение.

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

Суть операции связывания состоит в том, что на базе двух таблиц может быть получена третья таблица, в которой будут объединены поля из записей двух первых таблиц для тех записей, в которых совпадают значения полей, выбранных для связи. В зависимости от того, как соотносятся в таблицах ключевые поля (первичные ключи) и поля связи, различают связи "один к одному" (1:1), "один ко многим"(1:M или 1 : ) и "многие ко многим" (M:N или  :  ).