Реляционная модель данных
Реляционные модели характеризуются простотой структуры данных, удобным для пользователя табличным представлением и возможностью использования формального аппарата алгебры отношений и реляционного исчисления для обработки данных.
Реляционная модель ориентирована на организацию данных в виде двумерных таблиц. Каждая реляционная таблица представляет собой двумерный массив и обладает следующими свойствами:
- каждый элемент таблицы – это один элемент данных;
- все столбцы в таблице однородные, т.е. все элементы столбца имеют одинаковый тип и длину;
- каждый столбец имеет уникальное имя;
- одинаковые строки в таблице отсутствуют;
- порядок следования строк и столбцов может быть произвольным.
Пример реляционной таблицы:
№ личного дела | Фамилия | Имя | Отчество | Дата рождения | Группа |
Сергеев Петрова Анохин | Петр Анна Андрей | Михайлович Владимировна Борисович | 01.01.76 15.03.75 14.04.76 |
Теперь вспомним, что в таблице является записью, а что полем?
Запись – это строка таблицы, а поле – это столбец.
Поле, каждое значение которого однозначно определяет соответствующую запись, называется простым ключом (ключевым полем).
Если записи однозначно определяются значениями нескольких полей, то такая таблица базы данных имеет составной ключ. В рассмотренном примере ключевым полем является «№ личного дела».
Чтобы связать две реляционные таблицы, необходимо ключ первой таблицы ввести в состав ключа второй таблицы (при совпадении ключей). В противном случае нужно ввести в структуру первой таблицы внешний ключ – ключ второй таблицы.
Пример:
Предположим, что у нас имеется три реляционных таблицы: Студент, Сессия и Стипендия.
Студент (номер) | ||||
![]() | ||||
![]() |
Стипендия (результат) | ||||
Сессия (номер) (результат) | ||||
В таблице Студент ключевым полем является поле Номер, в таблице Сессия тоже Номер, а в таблице Стипендия – Результат.
Таким образом, таблицы Студент и Сессия имеют совпадающие ключи, что дает возможность легко организовать связь между ними. А таблицы Сессия и Стипендия имеют различные ключевые поля, поэтому, для организации связи между ними, необходимо в структуру таблицы Сессия ввести внешний ключ Результат.
Информационный объект – это описание некоторой сущности (реального объекта, явления, процесса, события) в виде совокупности логически связанных реквизитов (информационных элементов).
Такими сущностями для информационных объектов могут служить: цех, склад, материал, ВУЗ, студент, сдача экзаменов и т.д.
Информационный объект определенного реквизитного состава и структуры образует класс (тип), которому присваивается уникальное имя (символьное обозначение), например Студент, Сессия, Стипендия.
Информационный объект имеет множество реализаций – экземпляров, каждый из которых представлен совокупностью конкретных значений реквизитов и идентифицируется значением ключа (простого – один реквизит или составного – несколько реквизитов). Остальные реквизиты информационного объекта являются описательными. При этом одни и те же реквизиты в одних информационных объектах могут быть ключевыми, а в других – описательными. Информационный объект может иметь несколько ключей.
Пример структуры и экземпляров информационного объекта Студент:
Структура | Номер | Фамилия | Имя | Отчество | Дата | Группа |
Экземпляры информационного объекта Студент |
В информационном объекте Студент ключом является реквизит Номер, к описательным реквизитам относятся: Фамилия, Имя, Отчество, Дата, Группа. Если отсутствует реквизит Номер, то для однозначного определения характеристик конкретного студента необходимо использование составного ключа из трех реквизитов: Фамилия+Имя+Отчество.
Пример представления информационного объекта в виде графа:
![]() |