Знакомство с особенностями и этапами разработки базы данных "Летопись острова Санта Белинда". Анализ основных компонентов MS Access. Форма как объект базы данных, который можно использовать для создания интерфейса пользователя для приложения базы данных.
Аннотация к работе
База данных Access включает шесть типов объектов: таблицы, запросы, формы, отчеты, макросы, модули. Используя запросы, можно выбирать и обрабатывать хранящуюся в таблицах информацию. В базе должны содержаться следующие таблицы: 1) Таблица «Дома» для хранения информации о домах на острове. В базе данных должны быть реализованы запросы по предметной области, созданы отчеты для представления результатов запросов, а также формы для изменения и представления связанных данных. Например, таблицы «Дома» и «Жильцы» связываются по значениям полей id_дома из таблицы «Дома» и id_дома из таблицы «Жильцы» соответственно (рис.2).Результатом выполнения курсовой работы стала разработанная база данных, позволяющая автоматизировать операции учета и процессы составления отчетных документов на острове. Разработанная база отвечает всем требованиям предметной области, таблицы созданной базы данных отвечают требованиям нормализации, что позволяет обеспечить целостность и непротиворечивость информации.
Введение
Программное обеспечение для работы с базами данных используется на персональных компьютерах уже довольно давно. К сожалению, эти программы либо были элементарными диспетчерами хранения данных и не имели средств разработки приложений, либо были настолько сложны и трудны, что даже хорошо разбирающиеся в компьютерах люди избегали работать с ним до тех пор, пока не получали полных, ориентированных на пользователя приложений. Что касается легкости использования, то Microsoft Access совершил здесь настоящий переворот, и многие для создания своих собственных баз данных и приложений обращаются именно к нему.
Microsoft Access -это функционально полная реляционная СУБД. В ней предусмотрены все необходимые средства для определения и обработке данных, а также управление ими при работе с большими объемами информации.
Microsoft Access, обладая всеми чертами классической СУБД, предоставляет и дополнительные возможности. С помощью Access можно создать приложение, работающее в среде Windows и полностью соответствующее потребностям по управлению данными. База данных Access включает шесть типов объектов: таблицы, запросы, формы, отчеты, макросы, модули. Таблица - это объект для хранения данных. Используя запросы, можно выбирать и обрабатывать хранящуюся в таблицах информацию.
Можно создавать формы для ввода, просмотра и обновления данных, а также использовать Access для создания как простых, так и сложных отчетов. Формы и отчеты ""наследуют"" свойства базовой таблицы или запроса.
Целью курсовой работы является разработка базы данных «Летопись острова Санта Белинда».
Задачи работы: - разработать базу данных;
- создать отчеты;
- создать запросы;
- создать формы;
- создать пользовательский интерфейс базы данных.
Постановка задачи
Необходимо разработать базу данных «Летопись острова Санта Белинда». В базе должны содержаться следующие таблицы: 1) Таблица «Дома» для хранения информации о домах на острове.
2) Таблица «Жильцы» для хранения информации о жильцах этих домов.
3) Таблица «Жители» для хранения информации о жителях острова.
4) Таблица «Предприниматели» для хранения информации о предпринимателях.
5) Таблица «Ремесла» для хранения информации о ремеслах, которыми занимаются островитяне.
В базе данных должны быть реализованы запросы по предметной области, созданы отчеты для представления результатов запросов, а также формы для изменения и представления связанных данных. База данных должна иметь пользовательский интерфейс для организации эффективной и удобной работы пользователя с информацией.
1.Разработка базы данных
1.1 Выбор инструмента
Для разработки своей базы данных я выбираю СУБД Microsoft Access.
Microsoft Access - это реляционная СУБД корпорации Microsoft. Имеет широкий спектр функций, включая связанные запросы, связь с внешними таблицами и базами данных. Благодаря встроенному языку VBA, в самом Access можно писать приложения, работающие с базами данных.
Основные компоненты MS Access: · построитель таблиц;
· построитель экранных форм;
· построитель SQL-запросов (язык SQL в MS Access не соответствует стандарту ANSI);
· построитель отчетов, выводимых на печать.
Они могут вызывать скрипты на языке VBA, поэтому MS Access позволяет разрабатывать приложения и БД практически «с нуля» или написать оболочку для внешней БД.
Microsoft Access является проприетарным программным обеспечением, то есть для его использования необходимо приобрести лицензию. Однако для использования готовых приложений, созданных с помощью Access, лицензия не требуется. Для работы такого приложения необходима runtime-версия Access, которая распространяется бесплатно.
Корпорация Microsoft распространяет полнофункциональную версию Access как отдельно, так и совместно с другими приложениями (Word, Excel и др.) в составе пакетов Microsoft Office Professional, Microsoft Office Professional Plus и Microsoft Office Enterprise.
1.2 Создание таблиц
Для создания таблицы «Дома» на панели инструментов перехожу на вкладку «Создание» и выбираю Конструктор таблиц.
Откроется окно Таблица1: таблица (рис. 1) в котором надо описать структуру (макет) новой таблицы «Дома»: ввожу название первого поля «id_дома», затем выбираю тип данных «Счетчик и определяю данное поле как первичный ключ таблицы.
Рис 1. Конструктор таблиц.
Аналогично добавляю остальные поля, определяю для них тип данных и свойства в соответствии с таблицей.
Примечание. В столбце свойства поля указаны только те свойства, которые должны быть определены.
Таблица 1. «Дома»
Имя поля Тип данных Свойства поля id_дома Счетчик Ключевое поле, Индексированное поле - Да (Совпадения не допускаются)
Адрес Текстовый Размер поля - 255, Дата_постройки Дата/Время
Дата_сноса Дата/Время
Площадь Числовой
После того, как все необходимые поля определены, сохраняю созданный макет таблицы в базе данных и, кроме того, присваиваю ему имя "Дома".
Аналогичным образом создаю макеты для остальных таблиц в соответствии с приведенными ниже таблицами.
Таблица 2. «Жильцы»
Имя поля Тип данных Свойства поля id_дома Числовой Размер поля - длинное целое, id_жителя Счетчик Ключевое поле, Индексированное поле - Да (Совпадения не допускаются)
Дата_начала_проживания Дата/Время
Дата_окончания Дата/Время
Таблица 3. «Жители».
Имя поля Тип данных Свойства поля id_жителя Счетчик Ключевое поле, Индексир. поле - Да Фамилия Текстовый Размер поля - 255, Имя Текстовый Размер поля - 255, Пол Текстовый Размер поля - 255, Дата_рождения Дата/Время
Дата_смерти Дата/Время
Отец Текстовый Размер поля - 255, Мать Текстовый Размер поля - 255,
Таблица 4. «Предприниматели»
Имя поля Тип данных Свойства поля id_жителя Числовой Размер поля - длинное целое, id_ремесла Числовой Размер поля - длинное целое, Дата_открытия Дата/Время
Дата_закрытия Дата/Время
Количество работников Числовой Размер поля - длинное целое, Таблица 5. «Ремесла».
Имя поля Тип данных Свойства поля id_ремесла Счетчик Ключевое поле, Индексированное поле - Да (Совпадения не допускаются)
Название_ремесла Текстовый Размер поля - 255, 1.3 Создание связей между таблицами
На предыдущем этапе я создал 5 таблиц в базе данных. Однако эти таблицы никак не связаны между собой, и извлечь какую-либо связанную информацию из них не представляется возможным. К тому же, при вводе данных в таблицы может возникнуть несоответствие. Во избежание всех этих проблем необходимо установить связи между таблицами базы данных.
Связь между таблицами осуществляется по значениям связующих полей (ключей). Ключ таблицы - это поле или совокупность полей, которые однозначно определяют каждую запись таблицы. Ключи таблицы используются для ускорения поиска связанной информации.
Чтобы связать таблицы базы данных друг с другом, необходимо на вкладке Работа с базами данных выбрать Схема данных. Затем щелкнуть правой кнопкой мыши и выбрать Добавить таблицу. Вызывается окно Добавление таблицы, где на вкладке Таблицы выбираю все таблицы базы данных и нажимаю кнопку Добавить. Чтобы установить связь, выбираю ключевое поле одной таблицы и переношу его к соответствующему полю другой таблицы. Например, таблицы «Дома» и «Жильцы» связываются по значениям полей id_дома из таблицы «Дома» и id_дома из таблицы «Жильцы» соответственно (рис.2).
Рис. 2. Создание связи между таблицами.
На рисунке 2 видно, что мы устанавливаем флажок Обеспечение целостности данных и устанавливаем второй тип объединения.
Проделываем указанные выше действия с остальными таблицами и, в результате, получаем схему данных базы «Летопись острова Санта Белинда», отображенную на рисунке 3.
Рис3. Схема данных.
1.4 Создание форм база данный летопись
Форма - это объект базы данных, который можно использовать для создания интерфейса пользователя для приложения базы данных, для более удобного внесения и изменения данных в таблицах.
В базе данных «По Летопись острова Санта Белинда» создано 5 сложных форм: «Дома», «Жильцы», «Ремесла», «Жители», «Предприниматели».
Каждая из этих форм содержит главную и подчиненную формы, а также поле со списком, где можно выбирать определенную информацию.
Продемонстрируем создание и работу таких форм на примере формы «Жители».
Создание формы: На вкладке «создание» выбираю «Мастер форм».
В появившимся окне мастера форм, выбираю поля таблиц, которые должны быть отражены в форме. Нажимаю далее.
На следующем шаге выбираю представление данных в форме и нажимаю далее.
Выбираю внешний вид подчиненной формы и нажимаю далее.
Ввожу название главной и подчиненной формы и нажимаю готово. Результат работы отражен на рисунке 4.
Рис.4. Внешний вид формы «Жители»
Необходимо немного отредактировать созданную форму, добавить необходимые кнопки и поля со списками, для этого открываю форму в режиме конструктора.
Теперь создаю кнопки добавления новой должности и закрытия формы.
Создаю кнопку закрытия формы, данная кнопка нужна для возвращения в главную кнопочную форму интерфейса, который будет создан позже: Добавляю кнопку, появляется окно создания кнопок.
В появившимся окне, выбираю действие, которое будет делать кнопка, в моем случае - это Работа с формой->закрыть форму, нажимаю далее.
Выбираю способ отображения кнопки в форме, нажимаю далее.
Указываю название кнопки и нажимаю готово.
Для создания кнопки Добавить необходимо создать запрос на добавление записей, для этого: На вкладке создание, выбираю Конструктор запросов.
Добавляю кнопку, появляется окно создания кнопок.
В появившимся окне, выбираю действие, которое будет делать кнопка, в моем случае - это Работа с формой->Открыть форму, выбираю заранее созданную форму Группы для добавления записей, нажимаю далее.
Выбираю способ отображения кнопки в форме, нажимаю далее.
Указываю название кнопки и нажимаю готово.
На этом создание формы завершается, оставшиеся формы создаются аналогичным образом, поэтому проводить подробное описание нет необходимости, на рисунках ниже я покажу общий вид форм.
Рис.5. Общий вид формы «Дома».
Рис.6. Общий вид формы «Жильцы».
Рис.7. Общий вид формы «Предприниматели»
Рис.8. Общий вид формы «Ремесла».
1.5 Заполнения таблиц данными
После того, как созданы таблицы и установлены связи, а также созданы формы можно заполнять их соответствующей информацией, на рисунках ниже приведены примерные данные для заполнения.
Рис.9. Таблица «Дома».
Рис.10. Таблица «Жильцы».
Рис.11. Таблица «Жители»
Рис.12. Таблица «Предприниматели».
Рис.13. Таблица «Ремесла».
1.6 Создание запросов
Для того, чтобы извлечь необходимую информацию из базы данных, используются запросы. Для создания запросов используется язык SQL.
Запрос 1: Вывести имена жильцов домов и адреса в определенный период времени.
Для создания запроса необходимо: На вкладке создание, выбирать Конструктор запросов.
Выбирать режим SQL.
Прописыть следующий код: SELECT Жители.id_жителя, Жители.Фамилия, Жители.Имя, Дома.Адрес
FROM Жители RIGHT JOIN (Дома RIGHT JOIN Жильцы ON Дома.id_дома = Жильцы.id_дома) ON Жители.id_жителя = Жильцы.id_жителя
WHERE (((Жильцы.Дата_начала_проживания)#2/20/1995#)) OR (((Жильцы.Дата_окончания) Is Null));
Сохранить его. На рисунке 14 показан результат работы запроса.
Рис.14. Результат работы запроса 1.
Остальные запросы создаются аналогичным образом, поэтому ниже укажу формулировку, код запросов и покажу результаты их работы.
FROM Жители RIGHT JOIN Предприниматели ON Жители.id_жителя = Предприниматели.id_жителя
WHERE (((Жители.Пол)="Муж") AND ((Предприниматели.Количество_работников)>0));
Рис.16. Результат работы запроса 3.
Запрос 4: Вывести среднюю и суммарную площадь всех домов.
SELECT Sum(Дома.Площадь) AS Суммарная_площадь, Avg(Дома.Площадь) AS Средняя_площадь
FROM Дома;
Рис.17. Результат работы запроса 4.
Создание отчетов.
Отчет - это объект базы данных, который используется для отображения и обобщения данных. С помощью отчетов можно распространять и архивировать мгновенные снимки данных в печатном виде, в виде PDF- или XPS-файлов и файлов других форматов.
Отчеты могут содержать подробные сведения об отдельных записях, сводные сведения о большой группе записей либо и то, и другое. Кроме того, отчеты Access также можно использовать при создании наклеек для списков рассылок и многого другого.
Отчет состоит из следующих разделов: Заголовок отчета. Печатается только один раз в начале отчета. В заголовок включается информация, обычно размещаемая на титульной странице.
Верхний колонтитул. Выводится на печать вверху каждой страницы. Верхний колонтитул используется, например, когда нужно, чтобы название отчета повторялось на каждой странице.
Заголовок группы. Печатается перед каждой новой группой записей. Этот раздел используется для печати названия группы.
Область данных. Этот раздел печатается один раз для каждой строки данных из источника записей. В нем размещаются элементы управления, составляющие основное содержание отчета.
Примечание группы. Выводится на печать в конце каждой группы записей. В примечании группы отображаются сводные сведения о данной группе.
Нижний колонтитул. Печатается внизу каждой страницы. Используется для нумерации страниц и для печати постраничной информации.
Примечание отчета. Печатается один раз в конце отчета. Примечание отчета можно использовать для отображения итогов и другой сводной информации по всему отчету.
В своей базе данных, я создал отчет по каждому запросу. Рассмотрим пример создания отчета по запросу 1, для этого, нужно: Во вкладке создание выбрать мастер отчетов.
В появившемся окне Создания отчетов, выбрать необходимый запрос или таблицу, по которым нужно сформировать отчет, в моем случае - это Не сдавшие студент, затем, указать поля, которые необходимо отобразить и нажать кнопку далее.
Далее необходимо выбрать уровень группировки (по которым потом можно будет создать итоги) и нажать далее.
На этом шаге можно указать порядок сортировки и, если было создано разграничение по группам, задать итоги, после чего нажать на кнопку далее.
На этом шаге нужно задать макет отображения отчета, а также ориентацию, после чего нажать на кнопку далее.
На этом шаге нужно задать имя отчета и указать способ его открытия, после чего нажать на кнопку готово. На рисунке 18 отображен результат создания отчета.
Рис.18.Общий вид отчета по таблице «Дома».
Если после создания отчета таким образом что-то отображается не корректно, нужно перейти в режим конструктора и внести необходимые правки вручную. Остальные отчеты создаются аналогичным образом. Ниже на рисунках отображены общие виды, созданных отчетов.
Рис.19. Общий вид отчета по таблице «Жильцы».
Рис.20. Общий вид отчета по таблице «Жители».
Рис.21. Общий вид отчета по таблице «Предприниматели».
Рис.22. Общий вид отчета по таблице «Ремесла».
1.7 Создание интерфейса пользователя
Для более удобной работы пользователей с базой данных необходимо создавать пользовательский интерфейс.
Интерфейс к базе данных создается с помощью форм, кнопок и макросов.
Макрос - это программный алгоритм действий, записанный пользователем. Часто макросы применяют для выполнения часто повторяющихся действий.
Общий вид интерфейса пользователя базы данных «Летопись острова Санта Белинда» представлен на рисунке 23.
Рис.23. Общий вид пользовательского интерфейса.
Каждая кнопка пользовательского интерфейса - это макрос. Чтобы его создать нужно: 1. Открыть форму в режиме конструктора.
2. Добавить кнопку.
Рис.24. Кликнуть по созданой кнопке правой кнопкой мыши и выбрать обработка событий
Рис.25. В открывшемся окне, выбрать необходимое действие.
Рис.26. Указать имя формы.
3. Сохранить проделанные действия и закрыть окно создания макроса. Результат работы кнопки отражен на рисунке 27.
Рис.27. Результат работы кнопки.
Вывод
Результатом выполнения курсовой работы стала разработанная база данных, позволяющая автоматизировать операции учета и процессы составления отчетных документов на острове. Разработанная база отвечает всем требованиям предметной области, таблицы созданной базы данных отвечают требованиям нормализации, что позволяет обеспечить целостность и непротиворечивость информации. Также был разработан удобный пользовательский интерфейс, позволяющий облегчить работу с созданной базой.
Созданная база данных является учебной базой, то есть не может быть внедрена в производство без необходимых корректировок и дополнений. Кроме того, Microsoft Access, средствами которого разработана база, практически не используется для создания баз данных на предприятиях. Чаще всего используются такие СУБД, как Oracle Database, POSTGRESQL, DB2, Microsoft SQL Server.