На главную   ::   Содержание



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

Определение 1.   $ n$-арным отношением $ R$ называется подмножество декартова произведения множеств $ D_1,\dots,D_n$. Т.е. $ R\subseteq
D_1\times\dots\times D_n$. $ D_i$ называются доменами (не обязательно различные). Такое отношение удобно представлять в виде таблицы, столбцы которых соответствуют вхождениям доменов в отношение, а строки -- наборам значений из соответствующих доменов. Такие наборы часто называют $ n$-ками.

Отметим свойства табличного представления:

Определение 2.   Вхождение домена в отношение принято называть атрибутом.

Определение 3.   $ n$-ки отношения называются кортежами.

Определение 4.   Количество атрибутов в отношении называется степенью или рангом отношения.

Определение 5.   Схемой отношения $ R$ называется перечень имен атрибутов данного отношения с указанием домена, к которому они относятся: $ S_R=(A_1,\dots,A_n), A_i\subseteq D_i$.

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

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

Введем операции на отношениях, предложенные Э.Ф.Коддом.

Определение 7.   Объединением двух отношений называется отношение

$\displaystyle R_1\cup R_2=\{r\vert r\in R_1\vee r\in R_2\}.$

Определение 8.   Пересечением двух отношений назвается отношение

$\displaystyle R_1\cap R_2=\{r\vert r\in R_1\wedge r\in R_2\}.$

Определение 9.   Разностью двух отношений называется отношение

$\displaystyle R_1\setminus R_2=\{r\vert r\in R_1\wedge r\not\in R_2\}.$

Определение 10.   Расширенным декартовым произведением отношений $ R_1$ со схемой $ S_{R_1}=(A_1,\dots,A_n)$ и $ R_2$ со схемой $ S_{R_2}=(B_1,\dots,B_m)$ называется отношение со схемой следующего вида: $ (A_1,\dots,A_n,B_1,\dots,B_m)$, содержащее кортежи, полученные конкатенацией кортежей (добавлением второго кортежа в конец первого), т.е.

$\displaystyle R_1 \otimes R_2=\{(r,q)\vert r\in R_1\wedge q\in
R_2\}.$

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

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

$\displaystyle R[\alpha(r)]=\{ r\vert r\in R\wedge
\alpha(r)=TRUE\}.$

При этом $ \alpha$ -- булевское выражение, составленное из термов, скобок, операций $ \vee,\wedge,\neg$, в качестве термов допускаются $ A \circ a$ и $ A \circ B$, где $ \circ$ -- любая допустимая для данного домена операция сравнения, $ a$ -- значение из соответствующего домена, $ A,B$ -- атрибуты со значениями из одного домена.

Определение 12.   Проекцией отношения $ R$ на набор атрибутов $ B\subseteq S_R$ называется отношение $ R[B]$ со схемой $ B$, содержащее кортежи, получаемые из исходного отношения путем удаления из них значений, не принадлежащих атрибутам из набора $ B$.

Определение 13.   Операцией условного соединения называется бинарная операция, результат которой $ R[\beta]Q=\{(r,q)\vert r\in R, q\in Q,
\alpha(r,q)=TRUE \}$, где $ \alpha$ может быть построена так же, как в операции фильтрации, только в качестве терма случай $ A \circ B$ включается, когда $ A\in S_R, B\in S_Q$ -- атрибуты соответствующих отношений.

Определение 14.   Пусть имеется набор атрибутов $ A\subseteq S_R$, обозначим $ A^1\subseteq S_R:  A\cup A^1=S_R, A\cap
A^1=\varnothing$. Назовем результатом операции деления

$\displaystyle R[A:B]T=\left\{ r\vert r\in R[A^1]\wedge T[B]\subseteq \{y\vert y\in
R[A]\wedge (r,y)\in R\} \right\},$

причем $ S_{R[A]}\sim S_{T[B]}$ -- эти проекции повместимы по объединению, т.е. имеют эквивалентные схемы.



На главную   ::   Содержание