- •Глава 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
- •Заключение
- •Список литературы
- •Приложения
1.2.1 Настольные субд. Microsoft Access
Microsoft Access является настольной СУБД (система управления базами данных) реляционного типа. Достоинством Access является то, что она имеет очень простой графический интерфейс, который позволяет не только создавать собственную базу данных, но и разрабатывать приложения, используя встроенные средства.
В отличие от других настольных СУБД, Access хранит все данные в одном файле, хотя и распределяет их по разным таблицам, как и положено реляционной СУБД. К этим данным относится не только информация в таблицах, но и другие объекты базы данных, которые будут описаны ниже.
Для выполнения почти всех основных операций Access предлагает большое количество Мастеров (Wizards), которые делают основную работу за пользователя при работе с данными и разработке приложений, помогают избежать рутинных действий и облегчают работу неискушенному в программировании пользователю. Access следит за разграничением доступа разных пользователей к БД и обеспечивает защиту данных. При одновременной работе. В плане поддержки целостности данных Access отвечает только моделям БД небольшой и средней сложности. В нем отсутствуют такие средства как триггеры и хранимые процедуры, что заставляет разработчиков возлагать поддержание бизнес логики БД на клиентскую программу. В отношении защиты информации и разграничения доступа Access не имеет надежных стандартных средств. В стандартные способы защиты входит защита с использованием пароля БД и защита с использованием пароля пользователя.
Однако, при известных недостатках MS Access обладает большим количеством преимуществ по сравнению с системами подобного класса.
Распространенность, которая обусловлена тем, что Access является продуктом компании Microsoft, программное обеспечение и операционные системы которой использует большая часть пользователей персональных компьютеров. MS Access полностью совместим с операционной системой Windows, постоянно обновляется производителем, поддерживает множество языков.
MS Access предоставляет в распоряжение непрограммирующему пользователю разнообразные диалоговые средства, которые позволяют ему создавать приложения не прибегая к разработке запросов на языке SQL или к программированию макросов или модулей на языке VBA. Access обладает широкими возможностями по импорту/экспорту данных в различные форматы, от таблиц Excel и текстовых файлов, до практически любой серверной СУБД через механизм ODBC.
Встроенные средства разработки приложений. Большинство приложений, распространяемых среди пользователей, содержит тот или иной объем кода VBA (Visual Basic for Applications).
Одним из средств программирования в Access является язык макрокоманд. Программы, созданные на этом языке, называются макросами и позволяют легко связывать отдельные действия, реализуемые с помощью форм, запросов, отчетов.
1.2.2 Полупрофессиональные субд. SqLite
SQLite — компактная встраиваемая СУБД. Исходный код библиотеки передан в общественное достояние. В 2005 году проект получил награду Google-O’Reilly Open Source Awards. Слово «встраиваемый» (embedded) означает, что SQLite не использует парадигму клиент-сервер, то есть движок SQLite не является отдельно работающим процессом, с которым взаимодействует программа, а представляет собой библиотеку, с которой программа компонуется, и движок становится составной частью программы. Таким образом, в качестве протокола обмена используются вызовы функций библиотеки SQLite. Такой подход уменьшает накладные расходы, время отклика и упрощает программу. SQLite хранит всю базу данных (включая определения, таблицы, индексы и данные) в единственном стандартном файле на том компьютере, на котором исполняется программа. Несколько процессов или потоков могут одновременно без каких-либо проблем читать данные из одной базы. Запись в базу можно осуществить только в том случае, если никаких других запросов в данный момент не обслуживается; в противном случае попытка записи оканчивается неудачей, и в программу возвращается код ошибки. Другим вариантом развития событий является автоматическое повторение попыток записи в течение заданного интервала времени. Сама библиотека SQLite написана на C; существует большое количество привязок к другим языкам программирования, в том числе C++, Java, .NET, Python, Perl, PHP, Tcl (средства для работы с Tcl включены в комплект поставки SQLite), Ruby, Haskell, Scheme, Smalltalk и Lua, а также ко многим другим. Полный список существующих средств можно найти на странице проекта.
Из плюсов можно выделить:
Автономность и отсутствие внешних зависимостей
Маленький вес
Поддерживает большинство возможностей из стандарта SQL2
Доступна на OC Windows, Linux, Mac OS, Android и IOS
Однако, в SQLite есть ряд возможностей из SQL92, которые не поддерживаются:
Реализуется только LEFT OUTER JOIN
DROP COLUMN, ALTER COLUMN и ADD CONSTRAINT не поддерживаются
Нельзя выполнить удаление, вставку или обновление на VIEW