- •Глава 1. Анализ предметной области асу “Московская доставка” 6
- •Глава 2. Проектирование базы данных для объекта автоматизации курьерской доставки “Московская доставка” 16
- •Глава 3. Программная реализация бд для курьерской службы “Московская доставка” 31
- •Введение
- •Глава 1. Анализ предметной области асу “Московская доставка”
- •1.1 Системный анализ предметной области асу “Московская доставка”
- •1.2 Обзор информационных технологий, подходящих для разработки бд
- •1.2.1 Настольные субд. Microsoft Access
- •1.2.2 Полупрофессиональные субд. SqLite
- •1.2.3 Профессиональные субд. Oracle database
- •1.3 Обзор продуктов аналогов асу “Московская доставка”
- •1.3.1 Информационная система службы доставки “ups”
- •1.3.2 Информационная система службы доставки “ikea”
- •1.4 Требования к разрабатываемой бд курьерской службы “Московская доставка”
- •Выводы по главе 1
- •Глава 2. Проектирование базы данных для объекта автоматизации курьерской доставки “Московская доставка”
- •2.1 Разработка инфологической модели бд курьерской службы “Московская доставка”
- •2.2 Обоснование выбора модели данных
- •2.2.1 Иерархическая модель
- •2.2.2 Сетевая модель данных
- •2.2.3 Объектно-ориентированная модель данных
- •2.2.4 Реляционная модель данных
- •2.3 Логическое проектирование бд курьерской службы “Московская доставка”
- •2.4 Нормализация схемы базы данных
- •Выводы по главе 2
- •Глава 3. Программная реализация бд для курьерской службы “Московская доставка”
- •3.1 Анализ и выбор субд
- •3.2 Физическое проектирование бд “Московская доставка”
- •3.3 Реализация ограничений
- •3.4 Безопасность и контроль
- •Выводы по главе 3
- •Заключение
- •Список литературы
- •Приложения
2.2.2 Сетевая модель данных
Сетевая модель данных — логическая модель данных, являющаяся расширением иерархического подхода, строгая математическая теория, описывающая структурный аспект, аспект целостности и аспект обработки данных в сетевых базах данных. Разница между иерархической моделью данных и сетевой состоит в том, что в иерархических структурах запись-потомок должна иметь в точности одного предка, а в сетевой структуре данных у потомка может иметься любое число предков. Сетевая БД состоит из набора экземпляров определенного типа записи и набора экземпляров определенного типа связей между этими записями. Тип связи определяется для двух типов записи: предка и потомка. Экземпляр типа связи состоит из одного экземпляра типа записи предка и упорядоченного набора экземпляров типа записи потомка. Для данного типа связи L с типом записи предка P и типом записи потомка C должны выполняться следующие два условия:
каждый экземпляр типа записи P является предком только в одном экземпляре типа связи L;
каждый экземпляр типа записи C является потомком не более чем в одном экземпляре типа связи L
Плюсы сетевой модели данных:
Возможность эффективной реализации по показателям затрат памяти и оперативности
Минусы сетевой модели данных:
Высокая сложность и жесткость схемы БД
Не является полностью независимой
П ример сетевой модели приведен на рисунке 6:
Рисунок 6 – Сетевая модель данных
2.2.3 Объектно-ориентированная модель данных
В объектно-ориентированной модели при представлении данных имеется возможность идентифицировать отдельные записи базы данных. Между записями и функциями их обработки устанавливаются взаимосвязи с помощью механизмов, подобных соответствующим средствам в объектно-ориентированных языках программирования.
Логическая структура объектно-ориентированной БД внешне похожа на структуру иерархической БД. Основное различие между ними состоит в методах манипулирования данными. Для выполнения действий над данными в рассматриваемой модели БД применяются логические операции, усиленные объектно-ориентированными механизмами инкапсуляции, наследования и полиморфизма.
Плюсы объектно-ориентированной модели:
Возможность отображения информации о сложных взаимосвязях объектов. Объектно-ориентированная модель данных позволяет идентифицировать отдельную запись базы данных и определять функции их обработки.
Минусы объектно-ориентированной модели:
Высокая понятийная сложность
Неудобство обработки данных
Низкая скорость выполнения запросов
Пример объектно-ориентированной модели приведен на рисунке 7:
Рисунок 7 – Объектно-ориентированная модель данных
2.2.4 Реляционная модель данных
Недостатки иерархической и сетевой моделей привели к появлению новой, реляционной модели данных, созданной Коддом в 1970 году и вызвавшей всеобщий интерес. Реляционная модель была попыткой упростить структуру базы данных. В ней отсутствовали явные указатели на предков и потомков, а все данные были представлены в виде простых таблиц, разбитых на строки и столбцы. Реляционной называется база данных, в которой все данные, доступные пользователю, организованны в виде таблиц, а все операции над данными сводятся к операциям над этими таблицами. Представление данных не зависит от способа их физической организации. Это обеспечивается за счет использования математической теории отношений (само название "реляционная" происходит от английского relation - "отношение").
Реляционная СУБД также способна реализовать отношения предок/потомок, однако эти отношения представлены исключительно значениями данных, содержащихся в таблицах.
Ограничения реляционной модели:
Должны отсутствовать записи-дубликаты
Столбцы реляционной таблицы поименованы, поэтому их порядок не важен.
Порядок записей может быть произвольным
Каждая запись уникальна и однозначно определяется значением ключа.
Каждый элемент таблицы называется полем, может быть однозначно определен.
В столбце записываются данные одного типа
Недостатки традиционных реляционных моделей:
Избыточность по полям (из-за создания связей)
В качестве основного и, часто, единственного механизма, обеспечивающего быстрый поиск и выборку отдельных строк таблице (или в связанных через внешние ключи таблицах), обычно используются различные модификации индексов, основанных на B-деревьях. Такое решение оказывается эффективным только при обработке небольших групп записей и высокой интенсивности модификации данных в базах данных.
П ример реляционной модели приведен на рисунке 8:
Рисунок 8 – Реляционная модель данных