Основные понятия: таблица (отношение), кортеж, домен, первичный ключ.

Основной структурой данных в реляционной модели является отношение, в силу чего она и получила свое название (от английского relation - отношение).


Для его понимания требуется напомнить основные понятия алгебры множеств. Алгеброй называется множество с некоторым набором операций, замкнутое относительно этих операций. Это означает, что результат применения любой из операций к элементам множества снова является элементом исходного множества. Полным декартовым произведением множеств D1, D2, …, DN называется набор всевозможных сочетаний из N элементов d1, d2, …, dN, каждый из которых берется из соответствующего множества (di <- DI). Если множество Di содержит Mi элементов, то полное декартово произведение будет содержать M1 * M2 * … MN элементов.


Например, пусть множество D1 содержит фамилии D1 = { Иванов, Петров, Сидоров }, множество D2 содержит наименования предметов D2 = { Базы данных, Информатика, Программирование }, а множество D3 – оценки D3 = { 2, 3, 4, 5 }. Тогда полное декартово произведение этих множеств будет содержать 3 * 3 * 4 = 36 элементов:


D1 x D2 x D3 = { <Иванов, Базы данных, 2>, <Иванов, Базы данных, 3>, <Иванов, Базы данных, 4>, <Иванов, Базы данных, 5>, <Иванов, Информатика, 2>, <Иванов, Информатика, 3>, <Иванов, Информатика, 4>, <Иванов, Информатика, 5>, <Иванов, Программирование, 2>, <Иванов, Программирование, 3>, <Иванов, Программирование, 4>, <Иванов, Программирование, 5>, <Петров, Базы данных, 2>, < Петров, Базы данных, 3>, < Петров, Базы данных, 4>, < Петров, Базы данных, 5>, < Петров, Информатика, 2>, < Петров, Информатика, 3>, < Петров, Информатика, 4>, < Петров, Информатика, 5>, < Петров, Программирование, 2>, < Петров, Программирование, 3>, < Петров, Программирование, 4>, < Петров, Программирование, 5>, <Сидоров, Базы данных, 2>, < Сидоров, Базы данных, 3>, < Сидоров, Базы данных, 4>, < Сидоров, Базы данных, 5>, < Сидоров, Информатика, 2>, < Сидоров, Информатика, 3>, < Сидоров, Информатика, 4>, < Сидоров, Информатика, 5>, < Сидоров, Программирование, 2>, < Сидоров, Программирование, 3>, < Сидоров, Программирование, 4>, < Сидоров, Программирование, 5> }. Элементы этого множества описывают все возможные варианты исходов ситуации, которая может быть определена словами «студент получил за предмет следующую оценку».


В заключение отметим важное свойство полного декартового произведения: все элементы полного декартового произведения различны. Это означает, что в нем не найдется двух одинаковых n-ок, так как иначе исходные множества необходимо содержали бы одинаковые элементы, что невозможно.


Вернемся теперь к понятию отношение. N-кратным отношением R называется подмножество декартова произведения D1 x D2 x … x DN множеств D1, D2, …, DN (N >= 1), причем множества необязательно различны. Сами множества D1, D2, …, DN называются доменами.


В то время как полное декартово произведение описывает все возможные исходы некоторого события, отношение R моделирует определенную реальную ситуацию и может содержать любое количество элементов. Рассмотрим в качестве примера отношение R = { <Иванов, Базы данных, 5>, <Иванов, Информатика, 4>, <Иванов, Программирование, 5>, < Петров, Базы данных, 4>, < Петров, Информатика, 3>, <Петров, Программирование, 4>, < Сидоров, Информатика, 4>, <Сидоров, Программирование, 3> }. Данное отношение моделирует ситуацию «результаты сдачи экзаменов студентами» (Сидоров не сдавал экзамен по Базам данных).


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

 

R

Фамилия

Предмет

Оценка

Иванов

Базы данных

5

Иванов

Информатика

4

Иванов

Программирование

5

Петров

Базы данных

4

Петров

Информатика

3

Петров

Программирование

4

Сидоров

Информатика

4

Сидоров

Программирование

3

 

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

 

1. в таблице нет двух одинаковых строк (как и в отношении нет двух одинаковых кортежей);

2. столбцы таблицы соответствуют атрибутам отношения;

3. каждый атрибут отношения (таблицы) имеет уникальное имя;

4. порядок строк в таблице произвольный (как и кортежей в отношении);

5. порядок столбцов в таблице также может быть произвольным (от перестановки столбцов отношение не меняется).

 

Согласно этим свойства, отношение R1, изображенное ниже, равно (одинаково с точки зрения реляционной модели) отношению R:

 

R1

Предмет

Фамилия

Оценка

Информатика

Петров

3

Базы данных

Иванов

5

Программирование

Иванов

5

Информатика

Сидоров

4

Информатика

Иванов

4

Программирование

Сидоров

3

Базы данных

Петров

4

Программирование

Петров

4

 

Комментарии

Все комментарии
2комментарий

Ян ОПИ(Э) 07 5 октября, 2009 в 17:01:01

З.Ы. ошибочка вышла) не заметил что часть1 :D

Ян ОПИ(Э) 07 5 октября, 2009 в 16:53:13

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

Добавить комментарий