Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Все лекции.doc
Скачиваний:
64
Добавлен:
14.02.2015
Размер:
439 Кб
Скачать
☆

Виды моделей данных

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

Модель данных – совокупность структур данных и операций их обработки.

СУБД основывается на использовании иерархической, сетевой или реляционной модели, на комбинации этих моделей или на некотором их подмножестве.

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

Сначала рассмотрим графическое изображение иерархической структуры.

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

Графическое изображение иерархической структуры бд

Уровень 1 а

Уровень 2 В1 В2 В3 В4 В5

Уровень 3 С1 С2 С3 С4 С5 С6 С7 С8

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

К каждой записи БД существует только один (иерархический) путь от корневой записи. Например, для записи С4 путь проходит через записи А и В3.

Пример иерархической структуры БД:

Институт (специальность, название, директор)

Группа (номер группы, староста)

Студент (номер зачетной книжки, фамилия, имя, отчество)

Для рассмотренного примера иерархическая структура правомерна, т.к. каждый студент учится только в одной определенной группе, которая относится только к одному определенному институту.

Сетевая модель данных

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

Графическое изображение сетевой структуры

Примером сетевой структуры может служить структура базы данных, содержащей сведения о студентах, участвующих в научно-исследовательских работах (НИРС). Возможно участие нескольких студентов в разработке одной НИРС, а также участие одного студента в нескольких НИРС.

Пример сетевой структуры БД:

Студент (номер зачетной книжки, фамилия, группа)

Работа (шифр, руководитель, область)

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

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

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

  • каждый элемент таблицы – это один элемент данных;

  • все столбцы в таблице однородные, т.е. все элементы столбца имеют одинаковый тип и длину;

  • каждый столбец имеет уникальное имя;

  • одинаковые строки в таблице отсутствуют;

  • порядок следования строк и столбцов может быть произвольным.

Примерреляционной таблицы:

№ личного дела

Фамилия

Имя

Отчество

Дата рождения

Группа

16493

16593

16693

Сергеев

Петрова

Анохин

Петр

Анна

Андрей

Михайлович

Владимировна

Борисович

01.01.76

15.03.75

14.04.76

111

112

111

Теперь вспомним, что в таблице является записью, а что полем?

Запись – это строка таблицы, а поле – это столбец.

Поле, каждое значение которого однозначно определяет соответствующую запись, называется простым ключом (ключевым полем).

Если записи однозначно определяются значениями нескольких полей, то такая таблица базы данных имеет составной ключ. В рассмотренном примере ключевым полем является «№ личного дела».

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

Пример:

Предположим, что у нас имеется три реляционных таблицы: Студент, Сессия и Стипендия.

Студент

(номер)

Стипендия

(результат)

Сессия

(номер)

(результат)


В таблице Студент ключевым полем является поле Номер, в таблице Сессия тожеНомер, а в таблице Стипендия –Результат.

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

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

Такими сущностями для информационных объектов могут служить: цех, склад, материал, ВУЗ, студент, сдача экзаменов и т.д.

Информационный объект определенного реквизитного состава и структуры образует класс (тип), которому присваивается уникальное имя (символьное обозначение), например Студент, Сессия, Стипендия.

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

Примерструктуры и экземпляров информационного объекта Студент:

Структура

Номер

Фамилия

Имя

Отчество

Дата

Группа

Экземпляры информационного объекта Студент

В информационном объекте Студент ключом является реквизит Номер, к описательным реквизитам относятся: Фамилия, Имя, Отчество, Дата, Группа. Если отсутствует реквизит Номер, то для однозначного определения характеристик конкретного студента необходимо использование составного ключа из трех реквизитов: Фамилия+Имя+Отчество.

Пример представления информационного объекта в виде графа:

Тема: ПРОГРАММЫ ПО ЭКОНОМИЧЕСКОМУ АНАЛИЗУ ДЕЯТЕЛЬНОСТИ ПРЕДПРИЯТИЯ

Экономическая и финансовая деятельность поддерживается следующими прикладными программными продуктами: