Автор работы: Пользователь скрыл имя, 24 Ноября 2013 в 19:04, курсовая работа
Цель проектирования базы данных состоит в отображении процесса ремонтной деятельности малого предприятия
Для достижения данной цели были поставлены следующие задачи:
определение и анализ предметной области;
разработка концептуальной модели базы данных;
построение таблиц базы данных «Автосервис»;
построение форм, запросов и отчётов данной БД.
Введение 3
РАЗДЕЛ 1. Разработка базы данных 4
Постановка задачи 4
Анализ предметной области 5
РАЗДЕЛ 2. Моделирование структур данных 7
2.1. Разработка концептуальной модели базы данных 7
2.2. Разработка логической модели данных 9
2.3. Преобразование модели «сущность-связь» в реляционную
модель данных 10
РАЗДЕЛ 3. Проектирование базы данных 12
3.1. Разработка таблиц 12
3.2. Разработка форм для ввода данных 17
3.3. Разработка запросов к базе данных 21
3.4. Разработка отчетов 27
ЗАКЛЮЧЕНИЕ 30
СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ 31
Таблица является основой базы данных, поэтому при разработке таблиц рекомендуется руководствоваться следующими основними принципами [2, C. 7]:
Каждая таблица содержит сведения по конкретной теме, а каждое поле в таблице содержит конкретный факт по теме таблицы. Для каждой таблицы в базе данных необходимо определить свойства содержащихся в них.
База данных «Автосервис» содержит четыре таблицы:
Рис. 3. Таблица Заказчики.
Рис. 4. Таблица Заказы.
Данная таблица содержит следующие атрибуты:
Рис. 5. Перечень работ.
Рис. 6. Мастера.
Определим, для каждой сущности первичный ключ, при этом надо учитывать, что сильные сущности имеют только одно ключевое поле, а слабые — столько же, сколько и связей. При выборе первичного ключа будем руководствоваться правилами [3, C. 46]:
– ключ должен содержать минимальный набором атрибутов;
– использовать следует тот ключ, вероятность изменения значений которого минимальна;
– значение ключа должно иметь минимальную длину.
Исходя из вышесказанного, у имеющихся сущностей определим такие ключевые поля:
После разбиения сведений на таблицы и определения ключевых полей необходимо выбрать способ, которым СУБД будет объединять связанные сведения. Для этого не обходимо определить связи между таблицами базы данных.
OpenOffice.org BASE поддерживает четыре типа отношений между таблицами [2, С. 31]:
– один-к-одному (каждая запись в одной таблице соответствует только одной записи в другой таблице);
– один-ко-многим (каждая запись в одной таблице соответствует многим записям в другой таблице);
– много-к-одному (аналогична записи «один-ко-многим);
– много-ко-многим (одна запись из первой таблицы может быть связана более чем с одной записью из второй таблицы либо одна запись из второй таблицы может быть связана болеечем с одной записью из первой таблицы).
Связи, установленные в БД «Автосервис» уже были представленны в предыдущем разделе на рис. 2.
Форма — объект, предназначенный для ввода, редактирования и просмотра табличных данных в удобном виде.
Формы содержат так называемые элементы управления, с помощью которых осуществляется доступ к данным в таблицах. Элементами управления являются текстовые поля для ввода и правки данных, кнопки, флажки, переключатели, списки, надписи. Создание форм, содержащих необходимые элементы управления, существенно упрощает процесс ввода данных и позволяет предотвратить ошибки.
Формы OpenOffice.org Base предоставляют функциональные возможности для выполнения многих задач, которые нельзя выполнить другими средствами, они позволяют выполнять проверку корректности данных при вводе, проводить вычисления, и обеспечивают доступ к данным в связанных таблицах с помощью подчиненных форм.
OpenOffice.org Base предлагает несколько способов создания форм. Самым простым из них является использование средств автоматического создания форм на основе таблицы или запроса [6].
Для базы данных «Автосервис» предусмотрены четыре простые формы и три субформы.
Примеры простых форм приведены на рис.7-10.
Рис.7. Форма Заказчик.
Рис.8. Форма Заказы.
Рис.9. Перечень работ.
Рис.10. Мастера.
Составная форма содержит главную форму и подчиненную ей форму — субформу. Субформа — это по своему содержанию та же форма, но используемая не самостоятельно, а загружаемая всегда из какой-либо формы при открытии или создании документа. В субформе можно делать практически все то же, что и в форме, за тем исключением, что нельзя вставить в нее другую субформу.
При создании полей в субформах обязательно нужно учитывать, что имена всех полей должны быть уникальными в пределах формы вместе со всеми субформами, которые в ней используются одновременно.
Благодаря составным формам появляется возможность одновременно заполнять разные таблицы.
Примеры субформ представлены на рис. 11-13.
Рис. 11. Форма Заказчик с субформой Заказы.
Форма Заказчик с субформой Заказы — обеспечивает ввод необходимых данных для идентификации заказчика и просмотра выполненных работ по данному заказу. Эта форма позволяет вносить информацию в таблицы Заказчик и Заказы.
Рис. 12. Форма Заказы с субформой Ремонтные работы.
Эта форма позволяет вносить информацию в таблицы Заказы и Ремонтные работы.
Рис. 13. Форма Мастера с субформой Заказы.
Форма Мастера с субформой Заказы позволяет контролировать выполнения работ конкретным мастером.
Запрос — объект, позволяющий получить нужные данные из одной или нескольких таблиц.
Запросы служат для извлечения данных из таблиц и предоставления их пользователю в удобном виде. С их помощью выполняют отбор данных, их сортировку и фильтрацию. Можно выполнить преобразование данных по заданному алгоритму, создавать новые таблицы, выполнять автоматическое заполнение таблиц данными, импортированными из других источников, выполнять простейшие вычисления в таблицах и многое другое.
Особенность запросов состоит в том, что они черпают данные из базовых таблиц и создают на их основе временную результирующую таблицу (моментальный снимок) — образ отобранных из базовых таблиц полей и записей. Работа с образом происходит быстрее и эффективнее, нежели с таблицами, хранящимися на жестком диске.
По соответствующему запросу можно получить отсортированные и отфильтрованные нужным образом данные. Запросы также можно использовать в качестве источников записей для форм, отчетов и страниц доступа к данным [1].
Существует несколько типов запросов [8]:
OpenOffice.org BASE поддерживает не все рассмотренные типы запросов. Base, входящей в состав OpenOffice.org поддерживает такие запросы, как: запрос на выборку, запрос с параметрами и запросы SQL.
В разработанной базе данных было построено восемь различных по типам запросов:
Детальнее рассмотрим два из них:
Для его построения были использована таблица Заказы, из которой были выбраны такие атрибуты, как: Код заказа, Дата заказа. В поле Дата заказа был вписан критерий, который позволяет отобрать нужные данные из множества всей информации о датах заказов.
Данный запрос при выполнении дает информацию о всех заказах за определённый месяц.
Рис. 14. Запрос «Количество заказов за определённый месяц».
Результат выполнения данного запроса представлен на рис. 15.
Рис. 15. Результат выполнения запроса «Количество заказов за определённый месяц».
Для его построения были использованы таблицы: Заказчик и Заказы. Из таблицы Заказчик бил выбран атрибут Коз заказчика, из таблицы Заказы выбираем аналогичный атрибут. В поле таблицы Заказы выбираем функцию количество. В результате, данный запрос при выполнении дает информацию о количестве заездов каждым заказчиком на автосервис.
Рис. 16. Запрос «Количество заездов на автосервис».
Результат выполнения данного запроса представлен на рис. 17.
Рис. 17. Результат выполнения запроса «Количество заездов на автосервис».
Результаты выполнения остальных запросов представлены на рис. 18-22.
Рис. 18. Результат выполнения запроса «Марки ремонтируемых автомобилей».
Рис. 19. Результат выполнения запроса «Общая калькуляция за 2012 год».
Рис. 20. Результат выполнения запроса «Неоплаченные заказы».