Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Модуль 3.docx
Скачиваний:
154
Добавлен:
04.06.2015
Размер:
2 Мб
Скачать
☆

Основы реляционной алгебры

Реляционная модель основана на матем понятии отношения, физ представлением которого является таблица.

Отношение – это плоская таблица, состоящая из столбцов и строк.

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

Атрибут – это поименованный столбец отношения.

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

Домен – это набор допустимых значений для одного или нескольких атрибутов.

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

Таблица 2 Домены некоторых атрибутов отношений

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

Степень отношения определяется количеством атрибутов, кото­рое оно содержит.

Если Отношение имеет шесть атрибутов, следовательно, его степень равна шести. Это значит, что каждая строка таблицы является 6-арным кортежем. Отношение только с одним атрибутом имеет степень 1 и называется унарным (unary) отношением (или 1-арным кортежем). Отношение с двумя атрибутами называется бинарным (binary), отноше­ние с тремя атрибутами – тернарным (ternary), а для отношений с большим количеством атрибутов используется термин n-арный (n-ary). Определение степени отношения является частью заголовка отношения.

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

Альтернативная терминология. Терминология, используемая в реляционной модели, порой может привести к пу­танице, поскольку помимо предложенных терминов существует еще один. Отношение в нем называется файлом (file), кортежи – записями (records), а атрибуты – полями (fields). Эта терминология основана на том факте, что физически СУБД может хранить каждое отношение в отдельном файле.

Альтернативные варианты терминов в реляционной модели

Отношения

Для понимания истинного смысла термина “отношение” рассмотрим несколько ма­тематических понятий. Допустим, у нас есть два множества D1 и D2 , где D1 = {2,4} и D2 = {1,3,5}. Декартовым произведением этих двух множеств (обозначается как D1 x D2) называется набор из всех возможных пар, в которых первым идет элемент множест­ва D1, а вторым – элемент множества D2. Альтернативный способ выражения этого произведения заключается в поиске всех комбинаций элементов, в которых первым идет элемент множества D1, а вторым – элемент множества D2. В данном примере по­лучим следующий результат: D1 х D2 = {(2,1),(2,3),(2,5),(4,1),(4,3),(4,5)}.

Любое подмножество этого декартового произведения является отношением. На­пример, в нем можно выделить отношение R: R = ((2,1),(4,1)}.

Для определения тех возможных пар, которые будут входить в отношение, можно задать некоторые условия их выборки. Например, если обратить внимание на то, что отношение R содержит все возможные пары, в которых второй элемент равен 1, то определение отношения R можно сформулировать следующим образом: R = {(x,y) | x D1, y D2, у = 1}.

На основе тех же множеств можно сформировать другое отношение S, в котором первый элемент всегда должен быть в два раза больше второго. Тогда определение отношения S можно сформулировать так: S = {(x,y) | x D1, y D2, х = 2у}.

В данном примере одна возможная пара данного декартового произв соотв этому условию: S = {(2,1)}.

Увеличивая количество множеств, можно дать обобщенное определение отноше­ния на n доменах. Пусть имеется n множеств D1, D2, .., Dn. Декартово произв для этих n. множеств можно определить:

D1 x D2 x….x Dn = {(d1, d2,..., dn) | d1D1, d2D2,...,dnDn.

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

Используя указанные концепции в контексте базы данных, получим следую­щее определение реляционной схемы. Реляционная схема – имя отношения, за которым следует множество пар имен атрибутов и доменов. Например, для атрибутов А1, А2, ..., Аn с доменами D1, D2, ..., Dn реляционной схе­мой будет множество {A1 : D1, A2 : D2, ... , An : Dn}. Отношение R, заданное реляционной схемой S, является множеством отображений имен атрибутов на соответствующие им домены. Таким образом, отношение R является множеством таких n-арных кортежей { A1 : d1, A2 : d2, ... , An : dn }, где d1D1, d2D2,..., dnDn.

Каждый элемент n-арного кортежа состоит из атрибута и значения этого атрибу­та. Обычно при записи отношения в виде таблицы имена атрибутов перечисляются в заголовках столбцов, а кортежи образуют строки формата (d1, d2, ..., dn), где каждое значение берется из соответствующего домена. Таким образом, в реляционной модели отношение можно представить как произвольное подмножество декартового произве­дения доменов атрибутов, тогда как таблица – это всего лишь физическое представ­ление такого отношения.