Проектирование и реализация базы данных средствами Access
Министерство образования и науки Российской Федерации
Федеральное агентство образования
Государственное образовательное учреждение высшего профессионального образования
"Ижевский государственный технический университет"
Кафедра "Экономика предприятия"
Курсовая работа
по дисциплине "Учебный практикум на компьютере"
на тему "Проектирование и реализация базы данных средствами Access"
2006
Содержание
Введение
Теоретическое исследование. Отличия форм от таблиц
Описание разработанной базы данных. Задача расчета сметы на выполнение работ по объекту
Инструкция пользователя
Заключение
Список литературы
Введение
В настоящий момент информационные технологии повсеместно внедряются во все сферы человеческой деятельности. Одной из самых распространенных современных информационных технологий является использование баз данных. Базы данных создаются и используются с помощью специальных программных и языковых средств, называемых Системами Управления Базами Данных (СУБД). Существует большое разнообразие типов СУБД. Наиболее распространенными в настоящее время являются реляционные СУБД, к которым и относится Access.
База данных – совокупность данных, организованных по определенным правилам, предусматривающим общие принципы описания, хранения и манипулирования данными. Данные, относящиеся к некоторой предметной области, объединяются и структурируются таким образом, чтобы над ними можно было выполнять необходимые операции: обновлять, добавлять новые данные, удалять ненужные, извлекать данные, отвечающие условиям поиска.
В базе данных, разработанной в данной курсовой работе, рассчитывается смета на выполнение работ по объекту, т.е. содержится информация о работах, производимых на каждом объекте, и об общей стоимости работ на объекте.
База данных "Расчет сметы на выполнение работ по объекту" может быть использована практически на любом предприятии. Она будет отражать нужные сведения, выполнять запросы по задаваемым данным, выводить отчеты и многое другое, при этом база данных проста и удобна в использовании.
1. Теоретическое исследование
Отличия форм от таблиц
Таблицы – основной объект любой базы данных, т.к., во-первых, в таблице хранятся все данные, имеющиеся в базе, а во-вторых, таблицы хранят и структуру базы (поля, их типы и свойства). Использование отдельной таблицы для каждой темы означает, что соответствующие данные сохранены только один раз, что делает базу данных более эффективной и снижает число ошибок при вводе данных. В режиме таблицы можно добавлять, редактировать, просматривать или выполнять другую работу с данными таблицы. Также можно отображать записи из таблиц, связанных с текущей таблицей, путем отображения подтаблиц в пределах основной таблицы.
Форма – диалоговый графический интерфейс пользователя для работы с базой данных. Задача формы – предоставлять пользователю средства для заполнения только тех полей, которые ему положено заполнять. Одновременно с этим в форме можно разместить специальные элементы управления (счетчики, раскрывающиеся списки, переключатели, флажки и прочие) для автоматизации ввода.
Как было сказано выше, формы являются основой разработки диалоговых приложений пользователя для работы с базой данных. Через формы может осуществляться первоначальная загрузка данных во взаимосвязанные таблицы базы данных, просмотр данных, а также их корректировка. Работая с формой, пользователь может добавлять и удалять записи в таблицах, изменять значения в полях, получать расчетные данные. В форме может осуществляться контроль вводимых данных, могут устанавливаться ограничения на доступ к данным, выводиться необходимые сообщения, возможна обработка событий, инициируемых пользователем или наступающих в процессе работы с формой. Типовые процедуры формируются автоматически при создании элементов формы. Такими элементами, например, являются графические кнопки.
Для формы и ее элементов управления в Access определен набор событий, для которых могут быть разработаны процедуры обработки события. Примерами таких событий являются: "Открытие формы", "Закрытие формы", "Текущая запись", "До обновления", "После обновления поля", "Нажатие кнопки", "Двойное нажатие кнопки".
Форма, как и таблица, может быть простой и составной.
Форма на основе одной таблицы может быть построена как самостоятельная для загрузки, просмотра и корректировки таблицы, а также как вспомогательная для включения в какую-либо составную форму.
Составная многотабличная форма создается для работы с несколькими взаимосвязанными таблицами. Многотабличная форма может состоять из основной части и одной или нескольких подчиненных включаемых форм.
При рассмотрении структуры и создания формы и таблицы между ними обнаруживается большое сходство. Но при всем многообразии общих черт формы имеют свои отличительные черты. Среди них можно отметить следующие:
Все данные в Access хранятся именно в таблицах. Остальные объекты, включая и форму (которая создается на основе таблицы или запроса), - лишь средства работы с этими данными.
Достоинства форм раскрываются особенно наглядно, когда происходит ввод данных с заполненных бланков. В этом случае форму делают графическими средствами так, чтобы она повторяла оформление бланка, - это заметно упрощает работу наборщика, снижает его утомление и предотвращает появление печатных ошибок.
Формы представляют пользователю более удобные средства по работе с данными, чем непосредственное редактирование таблиц.
Форма, в отличие от таблицы, имеет большое количество средств для ее оформления, которые придают ей более привлекательный вид.
В форме допускается использование макросов, которые позволяют автоматически повторять различные действия и тем самым избавляют нас от написания сложных программ и подпрограмм.
Форма имеет разнообразные функции для управления и обработки данных (к примеру, ограничения на доступ к данным, вывод необходимых сообщений, обработка событий, выполнение типовых процедур и др.)
Работая с формой, можно не только добавлять, изменять или удалять записи, но и получать расчетные данные.
2. Описание разработанной базы данных
Задача расчета сметы на выполнение работ по объекту
В данной базе данных необходимо отразить сведения об объектах и работах. Запрос к базе данных должен обеспечивать получение данных о всех работах на каждом объекте и общей стоимости работ на объекте.
При этом в результате информационного анализа установлено, что база должна содержать следующие сведения о каждом объекте: код объекта (идентификационный номер), наименование и адрес объекта.
Исходя из этих данных, первоначально можно определить один информационный объект: таблица Объекты.
В качестве первичного ключа используем поле Код объекта, т.к. каждому объекту соответствует свой персональный номер, который является для него уникальным. Далее необходимо отразить следующие сведения о работах: код работы (идентификационный номер), наименование и расценка работы. Определяем еще один информационный объект – таблица Работы
Для создания первичного ключа используем поле Код работы, уникальный номер для каждого вида работы. На рисунке 1 и рисунке 2 показана структура таблиц Объекты и Работы.
Рисунок 1 – структура таблицы
Объекты Работы
Рассмотрим выявленные информационные объекты на предмет связей между ними. Очевидно, что на одном и том же объекте может производиться несколько работ и что одна и та же работа может выполняться сразу на нескольких объектах, поэтому целесообразным будет установить связь "многие-ко-многим".
Для этого введем еще один информационный объект: таблицу Заказы, которая будет составлена из полей, которые являются внешними ключами для таблиц Объекты и Работы. Таким образом, получается таблица, состоящая из поля Код объекта и поля Код работы, причем оба поля будут являться ключевыми. На рисунке 3 представлена структура этой таблицы.
Рисунок 2 – структура таблицы
Заказы Сведенья о работах
Кроме того, для более полного представления о производимых работах создадим таблицу Сведения о работах (ее структура представлена на рисунке 4), которая будет отражать следующие данные о работах: код работы, сроки выполнения (в днях), наличие используемых красок и покрытий, их поставщик и страна-изготовитель. Данная таблица будет связана с таблицей Работы с помощью связи "один-к-одному". На рисунке 5 изображены все связи, установленные с помощью схемы данных, между таблицами Объекты, Работы, Заказы и Сведения о работах данной базы данных.
Рисунок 3 – Схема данных
Для облегчения работы с данными используют формы. Создадим обычную форму ввода данных, в которой используются две таблицы: Работы и Сведенья о работах. Для создания формы потребуются все поля из обеих таблиц. Для выборки данных сделаем запрос, содержащий эти поля, отсортируем по возрастанию по полю Код работы и назовем его Описание работ. Структура созданного запроса представлена на рисунке 6.
Рисунок 4 – Запрос Описание работ
Теперь после создания запроса приступаем к созданию формы и связыванию ее с запросом.
Создадим новую форму, в свойствах выберем Источник записей – Описание работ, чтобы связать ее с запросом. Далее выберем в меню Список полей и перетащим в форму нужные поля. Структура создаваемой формы представлена на рисунке 7.
Рисунок 5 – Структура создания формы Описание работ
Для более привлекательного вида формы вставим в нее рисунок, для этого в свойствах выберем Макет - Рисунок, а затем вставим нужный рисунок. Чтобы изменить цвет формы, щелкнем в любом пустом месте формы и в свойствах выберем подходящий цвет фона. Также изменим размер шрифта и способ его начертания. Для удобства пользования формой добавим следующие кнопки: первая запись, последняя запись, следующая запись, предыдущая запись, найти запись, добавить запись, сохранить запись, удалить запись, а также кнопку закрыть форму. Кнопки создаются с помощью перетаскивания пиктограммы Кнопка с Панели инструментов в любое место формы. При этом появляется диалоговое окно Создание кнопок, с помощью которого и задаются все параметры создаваемой кнопки. Чтобы избежать дублирования действий, в свойствах формы уберем кнопки перехода и кнопку закрытия.
Вид созданной формы показан на рисунке 8.
Подчиненные формы представляют большую гибкость при отображении и вводе данных из нескольких таблиц. Другими словами, подчиненная форма – это форма внутри формы, которая позволяет использовать данные из нескольких таблиц в одной форме.
Рисунок 6 – Форма Описание работ
В рамках данной базы данных существует возможность того, что на одном объекте может выполняться несколько работ, поэтому целесообразно будет создать такую форму, которая позволит просматривать данные о работах, выполняемых на каждом объекте, не создавая при этом каждый раз отдельный запрос. Прежде всего, создадим две формы: Объекты, которая будет являться главной, и Подчиненную, создав для нее предварительно запрос, содержащий таблицы Работы и Заказы. Для добавления Подчиненной формы в главную нужно сделать следующее: перетащить Подчиненную форму из окна базы данных в форму Объекты, открытую в режиме Конструктора. Вид главной формы Объекты и вид этой же формы со вставленной Подчиненной формой представлен на рисунках 9 и 10 соответственно.
Рисунок 7 – Структура формы Объекты
Рисунок 8 – Структура формы Объекты после вставки Подчиненной формы
Чтобы форма выглядела более привлекательной, изменим шрифт (стиль, начертание, цвет и размер) и вставим рисунок (в свойствах выберем Тип рисунка – внедренный, Масштабы рисунка – Вписать в рамку). Окончательный вид созданной формы представлен на рисунке 9.
Рисунок 11 – Окончательный вид формы Объекты
При перетаскивании Подчиненной формы из окна базы данных в главную форму автоматически устанавливается связь между формами, т.к. выполняются следующие условия:
Главная и подчиненная формы созданы на основе таблиц, отношение между которыми указано в окне схемы данных.
В главной и подчиненной формах содержатся поля с одинаковыми типами и именами, и некоторое поле главной формы является ключевым полем базовой таблицы.
После этого главная форма Объекты будет отображать все работы для каждого объекта.
Далее создадим запрос, который будет выводить нам все объекты, заказавшие определенный вид работ. Для этого создадим запрос, содержащий три таблицы: Объекты, Заказы и Работы. В область запроса перетащим нужные поля и сделаем так, чтобы поле Наименование работы не выводилось на экран, а также укажем условие отбора (к примеру, покраска), как это показано на рисунке 12. При выполнении данного запроса выводятся все объекты, заказавшие покраску (рисунок 13). Чтобы выводились объекты-заказчики других работ, нужно изменить условие отбора.
Рисунок 10 – Создание запроса Заказы на работу
Рисунок 11 – Выполнение запроса Заказы на работу
Переходим к созданию отчета. Отчеты используются для представления данных в удобном для пользователя виде. Отчет можно вывести на экран или распечатать на принтере. В отчете можно группировать и сортировать данные в любом порядке.
Отчет создадим в режиме Конструктора.
В данной базе данных необходимо получить сведения о всех работах на каждом объекте и общей стоимости работ на объекте. Для начала создадим запрос (Общий запрос), состоящий из следующих таблиц: Объекты, Заказы и Работы. В область запроса вытащим все поля из этих таблиц. При совпадении некоторых полей в таблицах вытаскиваем то поле, которое является ключевым. Структура запроса представлена на рисунке 14.
Рисунок 14 – Структура Общего запроса
Далее в свойствах отчета укажем Источник записей – Общий запрос. Выбрав его, перетащим в область данных отчета нужные поля, а именно: код работы, наименование работы и расценка работы.
В данном случае у нас будет группировка по полю Наименование объекта. При нажатии пиктограммы Сортировка и группировка появляется диалоговое окно (рисунок 15), в котором нужно указать поле, по которому будет производиться группировка (Наименование объекта), порядок сортировки и в свойствах группы добавить заголовок группы и примечание группы.
Рисунок 15 – Группировка по полю Наименование объекта
Затем перетащим в область заголовка группы из списка полей Общего запроса поле Наименование объекта и Код объекта (чтобы он не повторялся и выводился каждый раз вместе с наименованием объекта).
После всех проделанных действий в отчете будут выводится все работы, выполняемые на каждом объекте.
Для получения данных об общей стоимости работ на объекте, добавим в область примечаний группы поле. Далее, зайдя в свойства свободной области поля (рисунок 16), в полосе Данные запишем выражение =Sum([расценка работы]), а затем выполним: Формат поля – Денежный, для того, чтобы стоимость работ выводилась в денежных единицах.
Рисунок 16 – Создание поля Общая стоимость работ
Теперь в отчете будет выводится общая стоимость работ на каждом объекте. В область верхнего колонтитула добавим рисунок (эмблему предприятия) и надпись, содержащую название предприятия. Эти два объекта будут выводится в начале каждой страницы. В область нижнего колонтитула добавим еще одно поле, в котором будет выводится номер страницы. Для этого в свойствах поля в полосе Данные с помощью построителя выражений (Общие выражения – Страница N из M - Вставить) введем выражение ="Страница " &[Page]&" из "&[Pages] (рисунок 17).
Рисунок 17 – Построение выражения Страница N из M
Общая структура отчета представлена на рисунке 18.
Рисунок 18 – Общая структура Отчета
Окончательный вид отчета представлен на рисунке 19.
Рисунок 19 – Окончательный вид Отчета
Для придания базе данных законченного вида создадим кнопочную форму. Она представляет собой созданную пользователем форму с кнопками. С их помощью можно, например, запускать макросы открытия форм, отчетов, таблиц и т.д. В основном кнопочная форма используется в качестве главного меню приложения. Создадим новую форму и вставим в нее рисунок (в свойствах выберем Тип рисунка – внедренный, Масштабы рисунка – Вписать в рамку). Создадим кнопку закрыть форму и в свойствах формы уберем кнопки перехода и кнопку закрытия (чтобы избежать дублирования).
Далее с помощью макросов создадим кнопки для работы с элементами базы данных. Макрос – это набор команд и инструкций, выполняемых как одна команда. Он является таким же объектом Access, как таблица, отчет, форма и запрос, и создается для автоматического выполнения определенных действий или их совокупности.
Создадим кнопку Открыть таблицу "Объекты".
В свойствах выберем Подпись и введем текстовое выражение (название кнопки), а также оформим кнопку: изменим цвет текста, шрифт, размер, насыщенность и способ начертания. Затем создадим макрос Открытие таблицы "Объекты" (рисунок 20). Для этого создадим новый макрос в режиме Конструктора, в поле Макрокоманда выберем ОткрытьТаблицу, в Аргументах макрокоманды выберем Имя таблицы – Объекты, Режим данных – только чтение.
Рисунок 20 – Структура макроса Открытие таблицы "Объекты"
После этого в свойствах кнопки выберем События – Нажатие кнопки – открытие таблицы "Объекты" (рисунок 21).
Рисунок 21 – Присоединение макроса
Открытие таблицы "Объекты" к кнопке
Аналогично создаются кнопки и присоединяемые к ним макросы для других элементов базы данных. Структура макросов для кнопок Изменить таблицу "Объекты", Добавить записи в таблицу "Работы", Открыть форму "Описание работ", Открыть запрос "Заказы", Открыть "Отчет по работам" представлена на рисунках 22, 23, 24, 25 и 26 соответственно.
Рисунок 22 – Структура макроса Рисунок 23 – Структура макроса
Изменение таблицы "Объекты" Добавление записей в таблицу "Работы"
Рисунок 24 – Структура макроса Рисунок 25 – Структура запроса
Открытие формы "Описание работ" Открытии запроса "Заказы"
Рисунок 26 – Структура макроса "Отчет по работам"
Внешний вид созданной формы показан на рисунке 27.
Рисунок 27 – Внешний вид главной формы Меню
Чтобы при открытии базы данных первой всплывала именно эта кнопочная форма, сделаем следующее: в меню Сервис выберем Параметры запуска и в появившемся окне проставим необходимые параметры (рисунок 28).
Рисунок 28 – Установка параметров для формы Меню
3. Инструкция пользователя
база программный реляционный смета
База данных "Расчет сметы на выполнение работ по объекту", разработанная в данной курсовой работе, отражает сведения об объектах и о работах, производимых на этих объектах. Отчет обеспечивает пользователя информацией о том, какие виды работ выполняются на каждом объекте, а также в нем вычисляется общая стоимость работ.
При запуске базы данных первой всплывает главная форма Меню, которая содержит необходимые кнопки для работы с базой.
Первые две кнопки - Открыть таблицу "Объекты" и Открыть таблицу "Работы" - предназначены для открытия таблиц Объекты и Работы. Причем они будут доступны только для чтения, т.к. в строке Режим данных созданных для открытия этих таблиц макросов указано Только чтение.
Чтобы таблицы Объекты и Работы были доступны не только для чтения, но и для изменения, нужно нажать следующие кнопки: Изменить таблицу "Объекты" и Изменить таблицу "Работы".
Следующие две кнопки - Добавить записи в таблицу "Объекты" и Добавить записи в таблицу "Работы" - предназначены для добавления записей в соответствующие таблицы. При нажатии этих кнопок выводятся строки для добавления записей в таблицы Объекты и Работы.
Кнопки Открыть таблицу "Заказы" и Открыть таблицу "Сведения о работах" открывают соответствующие им таблицы Заказы и Сведения о работах, причем они доступны не только для просмотра, но и для изменения, т.к. в макросах, присоединенных к этим кнопкам, в строке Режим данных указано Изменение.
Чтобы открыть форму Объекты, которая выводит наименование объекта и производимые на нем работы, нужно нажать соответствующую кнопку, причем данную форму можно изменять, т.к. в макросе для этой кнопки в строке Режим данных указано Изменение.
Аналогично открывается форма Описание работ, которая содержит все сведения, касающиеся каждого вида выполняемых работ.
При нажатии кнопки Открыть запрос "Заказы" выводятся все объекты, заказавшие определенный вид работы, указанный в строке Условие отбора. Чтобы получить список объектов, заказавших другие работы, нужно изменить это условие.
При нажатии кнопки Открыть "Отчет по работам" выводится отчет, который отвечает требованиям данной задачи и содержит всю необходимую информацию, а именно, нам предоставляются сведения о всех работах, произведенных на каждом объекте, и об общей стоимости работ на объекте.
Чтобы закрыть главную форму Меню, достаточно нажать кнопку Закрыть форму, находящуюся в правом нижнем углу формы.
Заключение
Разработанная база данных создана для хранения и доступа к данным, содержащим сведения о некоторой предметной области (в нашем случае, об объектах и производимых на них работах). С помощью базы данных "Расчет сметы на выполнение работ по объекту" можно получать нужные сведения в удобном для пользователя виде. Она представляет собой систему данных, относящихся к одной и той же предметной области, и содержит более или менее детализированную информацию о ней. Степень ее детализации определяется рядом факторов, прежде всего целью использования информации из базы данных и сложностью производственных (деловых) процессов, существующих в пределах предметной области в конкретных условиях.
Базы данных оказывают большую помощь в учете и хранении информации на любом предприятии, автоматизируя типичные действия и делая работу пользователя с данными простой и удобной.
Список литературы
1. Бобцов А.А., Шиегин В.В. Банки и базы данных. Основы работы с MS Access. Часть 1 (для пользователей). Учебное пособие. – СПб., 2005.
2. Диго С.М. Создание баз данных в среде Access’2000. Учебное пособие по курсу "Базы данных". – М.: Издательство Московского международного института эконометрики, информатики и права, 2002.
3. Коцюбинский А.О., Грошев С.В. Microsoft Office XP. – М.: Издательство Триумф, 2001.
4. Стоцкий Ю. Самоучитель Office 2000. – СПб.: Питер, 1999.