Реляционная модель данных
Реляционная модель данных основана на математической теории отношений (само название "реляционная" происходит от английского relation- "отношение").
Отношения удобно представлять в виде таблиц.
Основные компоненты реляционного отношения.
| целое | cτpoκ,a | целое | |||
| номер | ИМЯ | ДОЛЖНОСТЬ | деньги | ||
| Табельный номер | Имя | Должность | Оклад | ∏P | емия |
| 2934 | Иванов | инженер | 112 | 40 | |
| 2935 | Петров | вед.инженер | 144 | 50 | |
| 2936 | Сидоров | бухгалтер | 92 | 35 | |
На рисунке представлена таблица, содержащая некоторые сведения о работниках гипотетического предприятия. Строки таблицы соответствуют кортежам. Каждая строка фактически представляет собой описание одного объекта реального мира (в данном случае работника), характеристики которого содержатся в столбцах. Можно провести аналогию между элементами реляционной модели данных и элементами модели "сущность-связь".
Реляционные отношения соответствуют наборам сущностей, а кортежи - сущностям. Поэтому, также как и вмодели "сущность-связь" столбцы в таблице, представляющей реляционное отношение, называют атрибутами.
Каждый атрибут определен на домене, поэтому домен можно рассматривать как множество допустимых значений данного атрибута. Несколько атрибутов одного отношения и даже атрибуты разных отношений могут быть определены на одном и том же домене. В показанном на рисунке примере атрибуты «Оклад» и «Премия» определены на домене «Деньги». Понятие домена имеет семантическую нагрузку: данные можно считать сравнимыми только тогда, когда они относятся к одному домену. Таким образом, в рассматриваемом нами примере сравнение атрибутов «Имя» и «Должность» является семантически некорректным, хотя они и содержат данные одного типа. Тоже самое можно сказать про атрибуты «Табельный номер» и «Оклад».
Именованное множество пар «имя атрибута - имя домена» называется схемой отношения. Мощность этого множества - называют степенью или арностью отношения. Набор именованных схем отношений представляет собой схему базы данных.
Атрибут, значение которого однозначно идентифицирует кортежи, называется ключевым (или просто ключом). В нашем случае ключом является атрибут "Табельный номер", поскольку его значение уникально для каждого работника предприятия. Если кортежи идентифицируются только сцеплением значений нескольких атрибутов, то говорят, что отношение имеет составной ключ.
Отношение может содержать несколько ключей. Всегда один из ключей объявляется первичным, его значения не могут обновляться. Все остальные ключи отношения называются возможными (или потенциальными) ключами.
В отличие от иерархической и сетевой моделей данных в реляционной отсутствует понятие группового отношения. Для отражения ассоциаций между кортежами разных отношений используется дублирование их ключей. Рассмотрим пример реляционной базы данных, в которой заданы отношения, представляющие наборы сущностей Отдел, Сотрудник, Заказчик, Контракт и Исполнители:
Пример реляционной БД
Как видно из рисунка связь между отношениями Отдел и Сотрудник создается путем копирования первичного ключа "Номеротдела" из первого отношения во второе.
Таким образом, для того, чтобы получить список работников для отдела с заданным наименованием, необходимо: 1) из таблицы Отдел установить значение атрибута "Номеротдела", соответствующее заданному наименованию отдела; 2) выбрать из таблицы Сотрудник все записи, значение атрибута "Номер отдела" которых равно значению, полученному на предыдущем шаге. Для того, чтобы узнать в каком отделе работает сотрудник, нужновыполнить обратную операцию: 1) определяем "Номеротдела" из таблицы Сотрудник; 2) по полученному значению находим запись в таблице Отдел.
Атрибуты, представляющие собой копии ключей других отношений, называются внешними ключами.
Большинство современных СУБД построено на основе реляционной модели данных. Обычным «житейским» представлением отношения является таблица, заголовком которой является схема отношения, а строками - кортежи отношения-экземпляра; в этом случае имена атрибутов именуют столбцы этой таблицы. Поэтому иногда говорят «столбец таблицы», имея в виду «атрибут отношения». Этой терминологии придерживаются в большинстве коммерческих реляционных СУБД. Реляционная база данных - это набор отношений, имена которых совпадают с именами схем отношений в схеме БД. Как видно, основные структурные понятия реляционной модели данных имеют очень простую интуитивную интерпретацию, хотя в теории реляционных БД все они определяются абсолютно формально и точно.
Свойства реляционных СУБД:
• Данные в них хранятся в таблицах;
• Связи между таблицами скрыты от пользователя;
• Язык запросов обладает свойством реляционной полноты. (ЯМД называется реляционно полным, если любой запрос, выражаемый с помощью одного выражения реляционной алгебры или одной формулы реляционного исчисления, может быть выражен с помощью одного оператора этого языка).
Важное свойство реляционной модели данных заключается в том, что она может быть однозначно построена по ER-модели.
1.
Еще по теме Реляционная модель данных:
- Основные проблемы и школы ранней греческой философии. Космоцентризм – основополагающий принцип первых философских школ.
- Классический период античной философии (Сократ, Платон Аристотель). Значение философии Аристотеля для развития европейской философской культуры.
- Философия 19 в.: экзистенциализм, персонализм, психоаналитическая философия.
- ЧАСТЬ III