Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
7
Добавлен:
05.06.2015
Размер:
295.94 Кб
Скачать

приложение e. Реляционная модель данных. Нормализация

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

Отношения

Определение множества:

Множеством называется собрание, совокупность, коллекция вещей, объединенных по какому-либо признаку (Натансон).

Заметим, что все элементы множества различны, то есть во множестве не может быть двух абсолютно одинаковых элементов. Инженерное толкование данного свойства может быть таким: "Если Вы можете сказать, что это один из таких одинаковых элементов, а вот это другой - значит Вы их можете отличить друг от друга, то есть чем-то они всё же отличаются, и, следовательно, неодинаковы".

Теперь приведем определение отношения:

Дана совокупность множеств Dl, D2, ... Dn (не обязательно различных).

Отношение R, определенное на этих множествах, есть множество упорядоченных кортежей (di, ck, ... dn ) таких, что di принадлежит Di, dz принадлежит D2, . . . dn принадлежит Dn.

Множества d|, D;, ... D„ называются доменами отношения R. Величина п называется степенью отношения.

Отношение dept_____________

DNAME

LOC

10

БУХГАЛТЕРИЯ

НЬЮ-ЙОРК

20

ИССЛЕДОВАНИЯ

ДАЛЛАС

30

ПРОДАЖИ

ЧИКАГО

40

ОПЕРАЦИИ

БОСТОН

На рисунке изображено отношение DEPT степени 3, определенное на доменах DEPTNO (номер отдела), DNAME (название отдела) и LOC (город, где находится отдел).

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

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

Число кортежей в отношении называется кардинальным числом отношения Так например, кардинальное число отношения DEPT в данный момент времени равно 4.'

Отношение первой степени называется унарным, отношение степени 2 -бинарным, степени 3 - тернарным, а степени п - п-арным.

Пример схемы отношения (реляционной схемы):

DOMAIN DEPARTMENT_NUMBER NUMBER(2) DOMAIN DEPARTMENT_NAME VARCHAR2(14) DOMAIN LOCATION VARCHAR2(13) ...

RELATION DEPT (DEPARTMENT_NUMBER DOMAIN DEPARTMENT NUMBER, DEPARTMENT_NAME DOMAIN DEPARTMENT~NAME, LOCATION DOMAIN LOCATION) -

Здесь приведена часть концептуальной схемы данных, в которой объявлены три домена (DEPARTMENT_NUMBER, DEPARTMENT.NAME, LOCATION) и одно отношение DEPT. Отношение DEPT определено тремя атрибутами (DEPARTMENT_NUMBER, DEPARTMENT_NAME, LOCATION). В данном примере имена доменов и атрибутов совпадают. Такое совпадение имен не только не является обязательным, но и не всегда возможно.

Понятие декартова произведения.

Дана совокупность множеств Dl, D2, ... Dn (не обязательно различных).

Декартовым произведением этих множеств (записывается как Dl х D2 х ... х Dn) является множество всех возможных упорядоченных кортежей (di, d2, ... dn ) таких, что di принадлежит Di, d2 принадлежит D2, ... dn принадлежит Dn.

В качестве примера на рисунке показано декартово произведение двух множеств D и Е

D

Е

Dl

Е1

Dl

Е2

Dl

ЕЗ

D2

Е1

D2

Е2

D2

ЕЗ


Определение отношения, основанное на понятии декартова произведения:

Дана совокупность множеств Dl, D2, ... Dn (не обязательно различных).

R есть отношение на множествах Di, D2, . . . D„, если оно является подмножеством декартова произведения Di Х D2 Х ... х Dn.

Строго говоря, порядок кортежей в отношении несуществен, то есть отношение является множеством, а множества, вообще говоря, неупорядочены. Например, кортежи отношения DEPT могут быть показаны в обратной последовательности - все равно отношение остаётся тем же самым.

Возвращаясь к определению, данному вначале, мы видим, что домены, напротив, упорядочены внутри отношения (напомним, что отношение есть множество упорядоченных кортежей, и j-й элемент каждого кортежа взят из j-го домена). Если

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

Домены и атрибуты_________________________

Важно понимать разницу между доменом и атрибутами (или столбцами), которые образуются из этого домена.