Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
КИТ_база_данных.doc
Скачиваний:
16
Добавлен:
15.09.2019
Размер:
836.1 Кб
Скачать

2.2. Иерархическая и сетевая модели данных

 

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

Иерархическая модель представляет собой перевернутое дерево, из корня и узлов (элементов данных) которого   исходят ветви (соответствующие связям элементов данных). На самом верхнем уровне только один узел – корень. Каждый элемент связан с одним или несколькими элементами на более низком уровне (порожденными элементами) и только с одним элементом на более высоком уровне,  за исключением корня. Пример иерархической организации данных схематично представлен на рис. 1.

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

 

 

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

 

 

Иерархическая модель является частным случаем сетевой.

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

 

 

2.3. Реляционная модель данных

 

На практике более распространена реляционная модель данных. Реляционная модель данных представляет собой комплекс взаимосвязанных простейших двумерных таблиц - отношений. Таблицы-отношения должны обладать следующими свойствами:

каждый столбец таблицы – это элемент данных (атрибут) и его значения должны быть не расчленяемыми на несколько значений;

все столбцы однородные;

в таблице нет двух одинаковых строк;

столбцы и строки могут просматриваться в любом порядке, безотносительно к их информационному содержанию и смыслу;

число строк не ограничено.

Отношение описывает некоторый объект материального мира  посредством множества атрибутов  R(А1, А2, …,Аn), называемого схемой отношения.

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

 

2.3.1. Логические связи между отношениями

 

Между отношениями устанавливаются связи. Связи делают их более информативными, чем они являются по отдельности. Они позволяют минимизировать избыточность данных в БД,

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

Связь существует четырех типов:

1) один-к-одному (1:1);

2) один-ко-многим (1:М);

3) многие-к-одному (М:1);

4) многие-ко-многим (М:М).

В случае связи 1:1 одному значению первичного ключа соответствует одно и только одно значение вторичного ключа. Пример связи этого типа:

 

 

В случае связи 1:М одному значению первичного ключа может соответствовать несколько значений вторичного ключа. Пример связи этого типа:

 

В случае связи М:1 одному значению вторичного ключа может соответствовать несколько  значений первичного. Пример связи этого типа:

 

В случае связи М:М одному значению первичного ключа может соответствовать несколько  значений вторичного, и одному значению вторичного – несколько значений первичного. Пример связи этого типа:

 

 

(каждый поставщик может поставлять несколько товаров; каждый товар может поставляться несколькими поставщиками).

 

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]