Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Информатика (лекции).doc
Скачиваний:
53
Добавлен:
19.09.2019
Размер:
3.53 Mб
Скачать

Модели данных

Каждая СУБД работает с определенной моделью данных. Под моделью данных понимается способ из взаимосвязи. Существуют различные модели данных: иерархическая, сетевая, реляционная, объектно-ориентированная. Наиболее распространенной в настоящее время является реляционная модель данных.

Иерархическая модель данных

В иерархической модели данные представлены в виде древовидной (иерархической) структуры (см. Рисунок 1).

Основные понятия модели: атрибут, узел, уровень, групповое отношение.

Атрибут – наименьшая единица структуры данных. Каждому атрибуту при описании базы данных присваивается уникальное имя. По этому имени к нему обращаются при обработке.

Узел – совокупность атрибутов данных, описывающих некоторый объект. На дереве узлы – это вершины графа. Каждый узел на более низком уровне связан только с одним узлом на более высоком уровне. Дерево имеет только одну вершину (корневой узел), не подчиненную никакой другой вершине и находящуюся на самом верхнем (первом) уровне. Зависимые (подчиненные) узлы находятся на втором, третьем, … уровнях. Количество деревьев в БД определяется числом корневых узлов.

Групповое отношение – иерархическое отношение между узлами двух типов. Родительский узел (владелец группового отношения) называется исходным, а дочерние узлы (члены группового отношения) – подчиненными.

К каждому узлу базы данных существует только один (иерархический) путь от корневого узла (см. Рисунок 18).

Рисунок 18. Иерархическая модель данных

Корневой узел каждого дерева обязательно должен содержать ключ – атрибут с уникальным значением. Ключи некорневых узлов должны иметь уникальное значение только в рамках группового отношения. Каждый узел идентифицируется полным сцепленным ключом, под которым понимается совокупность ключей всех узлов от корневого по иерархическому пути.

Для групповых отношений в иерархической модели обеспечивается автоматический режим включения и фиксированное членство. Это означает, что для запоминания любого некорневого узла в БД должен существовать его родительский узел. При удалении родительского узла автоматически удаляются все подчиненные.

Например: Школа. Ключи выделены жирным подчеркиванием (см. Рисунок 19).

Рисунок 19. Пример иерархической модели данных

Сетевая модель

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

Тип группового отношения задается его именем и определяет атрибуты общие для всех экземпляров данного типа.

Экземпляр группового отношения представляется узлом-владельцем и множеством (возможно пустым) подчиненных узлов. При этом имеется следующее ограничение: экземпляр узла не может быть членом двух экземпляров групповых отношений одного типа (т.е. сотрудник из примера не может работать в двух отделах).

Например:

Рисунок 20. Пример сетевой модели данных

Для отображения связи между сотрудниками и контрактами, заключенными этими сотрудниками, вводится узел СОТРУДНИК_КОНТРАКТ, который не имеет атрибутов и служит только для связи узлов КОНТРАКТ и СОТРУДНИК. В примере два сотрудника и два контракта, связи установлены между каждым сотрудником и каждым контрактом.