Изобретатель Кодд Е.Ф. От relation – отношение
Структура модели
Домен – множество однородных элементов. Обозначается D = dom(A)
Атрибут – именованный домен. D = dom(A) – атрибут A определен на домене D
Схема отношения – конечное множество атрибутов. Обозначается R(A1, A2,…An)
D= D1
D2
…
Dn
Отношение (реляционное отношение) – конечное подмножество множества D. Обозначается r(R)
D 
Кортеж ti
r(R) ; i=1..p, p – кардинальное число (количество кортежей)
Ключ отношения – набор атрибутов, обладающих 2-мя свойствами:
- уникальность (не существует 2-х различных кортежей, имеющих одинаковое значение ключа)
- минимальность (не существует подмножетсва ключа, для которого выполнялось бы 1-е свойство)
Ключ, состоящий из одного атрибута – простой, из нескольких – составной.
Если у отношения несколько ключей, то выбирается один – первичный, остальные – вторичные.
Внешний ключ – множество атрибутов отношения, которые уникальным образом идентифицируют запись другого отношения.
Ограничении целостности
- кортежи в отношении не повторяются,
- порядок кортежей в отношении не определен,
- порядок атрибутов в отношении не определен,
- 2 правила целостности:
1. не допускаются неопределенные значения ключевых атрибутов,
2. значения внешних ключей либо совпадают со значениями первичного ключа либо не определены.
Операции.
Операции обновления.
- Добавление. Цель: добавить 1 кортеж в отношение.
Условное обозначение: Add (r, A1=a1, A2=a2,…, An=an)
- Удаление. Цель: удаление 1 кортежа из отношения.
Условное обозначение: Del (r, A1=a1, A2=a2,…, An=an)
- Изменение. Цель: изменить значения 1 кортежа.
Условное обозначение: Ch (r, A1=a1, A2=a2,…, An=an, A1=b1, A2=b2,…, An=bn)
< a1, a2,…, an > - старые значения атрибутов, < b1, b2,…, bn > - новые значения атрибутов
Реляционные операции
- Объединение. Между 2-мя отношениями с одинаковыми схемами отношений.
Результат – отношение, содержащее кортежи 1-го и 2-го отношений. Одинаковые кортежи входят 1 раз.
- Пересечение.
Результат – отношение, содержащее кортежи, принадлежащие и 1-му и 2-му отношениям.
- Разность.
Результат – отношение, содержащее кортежи, принадлежащие 1-му отношению и не принадлежащие 2-му отношению.
- Дополнение.
r(R) D = dom(R)
Дополнение к r:
= D - r
- Активное дополнение.
Для каждого атрибута строится активный домен.
adom(A,r) = {d
dom(A) |
t
r : t(A) = d}
adom(R,r) = adom(A1,r)
…
adom(An,r)
= adom(R,r) - r
- Проекция
Выполняется над одним отношением по одному атрибуту.
r(R) A
R
πA(r) = {t(A) | t
r } получение всех значений атрибута А
- Селекция
r(R) A
R a
dom(A)
σA=a(r) = { t
r | t(A)=a }
- Соединения (бинарная операция, 2 отношения)
r(R) s(S)
Ø
r
s = { t
R
S |
tr
r,
ts
s : tr=t(R), ts = t(S), tr(R
S) = ts(R
S)}
(
- пишется слитно 2 треугольника)
r(R) s(S)
Ø
dom(A) = dom(B)
r [A=B] s = { t
R
S |
tr
r,
ts
s, tr=t(R), ts = t(S), tr(A) = ts(B)}
D1 Θ D2
a
D1, b
D2 a Θ b
r(R) s(S)
A
R B
S
r [A Θ B] s = { t
R
S |
tr
r,
ts
s, tr=t(R), ts = t(S), tr(A) Θ ts(B)}