Фундаментальным понятием реляционной модели данных является понятие отношения.
Атрибут отношения – есть пара вида <ИмяАтрибута : ИмяДомена>.
Имена атрибутов должны быть уникальны в пределах отношения. Часто имена атрибутов отношения совпадают с именами соответствующих доменов.
Отношение R, определенное на множество доменов D1, D2, Dn, содержит две части: заголовок и тело.
Заголовок содержит фиксированное множество атрибутов отношения:{ <А1:D1>, <A2:D2>,..., <An:Dn> } причем каждый из атрибутов Aj соответствует только одному из доменов Dj (j=1,2,... n).
Тело содержит множество кортежей. Каждый кортеж, в свою очередь, содержит множество пар вида <ИмяАтрибута : ЗначениеАтрибута>: { <A1:Vi1>, <A1:Vi2>,... <An:Vin>} (i=1,2,... m, где m – количество кортежей в этом множестве).
В каждом кортеже есть одна такая пара <Aj:Vij> для каждого атрибута Aj в заголовке. Для любой такой пары <Aj:Vij> Vij является значением из уникального домена Dj, который связан с атрибутом Aj.
Значения m называются кардинальным числом, n – степенью отношения R.
Проверим таблицу S – является ли она отношением.
В таблице есть 4 домена: домен номеров поставщиков, имен, значений статуса, наименований городов.
Заголовок: множество пар { <S#:S#>, <SNAME:NAME>, <STATUS:STATUS>, <CITY:CITY>}
Тело набор строк. Рассмотрим одну строку. Строка набор пар {<S#:’S1’>, <SNAME:’Рец’>, <STATUS:20>, <CITY:’Балахта’>}
Значит таблицу S можно рассматривать как изображение отношения. Отношение – абстрактный вид объекта, а таблица – конкретное изображение этого абстрактного объекта. Неформально отношение и таблица близки. Формально нет.
Вывод 1: Заголовок отношения описывает декартово произведение доменов, на котором задано отношение. Заголовок статичен, он не меняется во время работы с БД. Если в отношении изменены, добавлены или удалены атрибуты, то в результате получим уже другое отношение.
Вывод 2: Тело отношения представляет собой набор кортежей, то есть подмножество декартового произведения доменов. Таким образом, тело отношения собственно и является отношением в математическом смысле слова. Тело может измениться во время работы с БД – кортежи могут измениться, добавляться и удаляться.
Реляционной БД называется набор отношений.
Схемой реляционной БД – называется набор заголовков отношений, входящих в БД.
Синтаксис оператора создания отношения (К. Дейт):CREATE BASE RELATION ИмяБазовогоОтношения(ИмяАтрибута DOMAIN ИмяДомена)PRIMARY KEY (ИмяАтрибута)FOREIGN KEY (ИмяАтрибута) REFERENCES ИмяБазовогоОтношения;