Основные вопросы проектирования баз данных, принципы работы с Microsoft Office Access 2003
Курсовая работа
Основные вопросы проектирования баз данных, принципы работы с Microsoft Office Access 2003
Задание
В данной курсовой работе необходимо создать базу данных "Гостиница", которая должна осуществлять:
ведение списка постояльцев;
учёт забронированных мест;
ведение архива выбывших постояльцев за последний год.
Необходимо предусмотреть:
получение списка свободных номеров (по количеству мест и классу);
получение списка номеров (мест), освобождающихся сегодня и завтра;
выдачу информации по конкретному номеру;
автоматизацию выдачи счетов на оплату номера и услуг;
получение списка забронированных номеров;
проверку наличия брони по имени клиента и/или названию организации.
В качестве средства создания БД используем СУБД Microsoft Office Access 2003.
Содержание
Введение
1. Основные понятия баз данных
1.1 Базы данных и системы управления базами данных
1.2 Структура простейшей базы данных
1.3 Свойства полей базы данных
1.4 Типы данных
2. Основы Microsoft Office Access
2.1 Таблицы базы данных
2.2 Запросы базы данных
2.3 Формы базы данных
2.4 Отчеты базы данных
2.5 Макросы, модули, программы в MS ACCESS
3. Реализация базы данных
3.1 Постановка задачи
3.2 Концептуальная модель
3.3 Логическая модель
3.4 Реализация
Заключение
Библиографический список
Введение
Практически каждому человеку приходится иметь дело с обработкой информации. С развитием экономики и ростом численности населения возрастает объем взаимосвязанных данных, необходимых для решения коммерческих, административных и других задач.
Для решения этой проблемы были созданы СУБД
В данной курсовой работе рассматриваются основные вопросы проектирования баз данных, принципы работы с Microsoft Office Access 2003.
1. Основные понятия баз данных
Базы данных и системы управления базами данных
База данных - это организованная структура, предназначенная для хранения информации. Данные и информация - понятия взаимосвязанные, но не тождественные. Сегодня большинство систем управления базами данных (СУБД) позволяют размещать в своих структурах не только данные, но и методы (то есть программный код), с помощью которых происходит взаимодействие с потребителем или с другими программно-аппаратными комплексами.
С понятием базы данных тесно связано понятие системы управления базой данных (СУБД). Это комплекс программных средств, предназначенных для создания структуры новой базы, наполнения ее содержимым, редактирования содержимого и визуализации информации. Под визуализацией информации базы понимается отбор отображаемых данных в соответствии с заданным критерием, их упорядочение, оформление и последующая выдача на устройство вывода или передача по каналам связи.
В мире существует множество систем управления базами данных. Несмотря на то, что они могут по-разному работать с разными объектами и предоставляют пользователю различные функции и средства, большинство СУБД опираются на единый устоявшийся комплекс основных понятий. Это дает нам возможность рассмотреть одну систему и обобщить ее понятия, приемы и методы на весь класс СУБД.
Выбор среды разработки обусловлен следующими критериями:
Простота разработки, сопровождения и эксплуатации. Минимизация расходов на разработку. Если возникнет необходимость внесения изменений в структуру БД, то эта задача может быть решена даже студентом, без привлечения высококлассного специалиста;
СУБД должна обеспечивать накопление и управление данными, гарантируя при этом простоту в работе и быстроту доступа. Хранимые объемы информации незначительны, поэтому время обработки запросов мало, к тому же база данных храниться в одном файле – то есть поддержки сети не требуется;
СУБД MS Access является одной из самых эффективных, надежных для решения задач подобного масштаба и распространенных в России.
1.2 Структура простейшей базы данных
Структура базы данных определяет методы занесения данных и хранения их в базе. Следует уточнить, что если в базе нет никаких данных, то это все равно полноценная база данных, информация в ней все-таки есть – это ее структура. Базы данных могут содержать различные объекты, но основными объектами любой базы данных являются ее таблицы. Простейшая база данных имеет хотя бы одну таблицу. Соответственно, структура простейшей базы данных тождественно равна структуре ее таблицы.
Структуру двумерной таблицы образуют столбцы и строки. Их аналогами в структуре простейшей базы данных являются поля и записи. Если записей в таблице пока нет, значит, ее структура образована только набором полей. Изменив состав полей базовой таблицы (или их свойства), мы изменяем структуру базы данных и, соответственно, получаем новую базу данных.
1.3 Свойства полей базы данных
Поля базы данных не просто определяют структуру базы — они еще определяют групповые свойства данных, записываемых в ячейки, принадлежащие каждому из полей. Ниже перечислены основные свойства полей таблиц баз данных на примере СУБД Microsoft Access:
имя поля – определяет, как следует обращаться к данным этого поля при автоматических операциях с базой (по умолчанию имена полей используются в качестве заголовков столбцов таблиц);
тип поля – определяет тип данных, которые могут содержаться в данном поле;
размер поля – определяет предельную длину (в символах) данных, которые могут размещаться в данном поле;
формат поля – определяет способ форматирования данных в ячейках, принадлежащих полю;
маска ввода – определяет форму, в которой вводятся данные в поле (средств автоматизации ввода данных);
подпись – определяет заголовок столбца таблицы для данного поля (если подпись не указана, то в качестве заголовка столбца используется свойство "имя поля");
значение по умолчанию – то значение, которое вводится в ячейки поля автоматически (средство автоматизации ввода данных);
условие на значение – ограничение, используемое для проверки правильности ввода данных (средство автоматизации ввода, которое используется, как правило, для данных, имеющих числовой тип, денежный тип или тип даты);
сообщение об ошибке – текстовое сообщение, которое выдается автоматически при попытке ввода в поле ошибочных данных (проверка ошибочности выполняется автоматически, если задано свойство "условие на значение");
обязательное поле – свойство, определяющее обязательность заполнения данного поля при наполнении базы;
пустые строки – свойство, разрешающее ввод пустых строковых данных (от свойства "обязательное поле" отличается тем, что относится не ко всем типам данных, а лишь к некоторым, например к текстовым);
индексированное поле – если поле обладает этим свойством, все операция связанные с поиском или сортировкой записей по значению, хранящемуся в данном поле, существенно ускоряются. Кроме того, для индексированных полей можно сделать так, что значения в записях будут проверяться по этому полю на наличие повторов, что позволяет автоматически исключить дублирование данных.
1.4 Типы данных
Таблицы баз данных, как правило, допускают работу с большим количеством разных типов данных. Так, например, базы данных Microsoft Access работают со следующими типами данных:
текстовый – тип данных, используемый для хранения обычного неформатированного текста ограниченного размера (до 255 символов);
поле МЕМО – специальный тип данных для хранения больших объемов текста (до 65 535 символов). Физически текст не хранится в поле. Он хранится в другом месте базы данных, а в поле хранится указатель на него, но для пользователя такое разделение заметно не всегда;
числовой – тип данных для хранения действительных чисел;
дата/время – тип данных для хранения календарных дат и текущего времени;
денежный – тип данных для хранения денежных сумм. Теоретически, для их записи можно было бы пользоваться и полями числового типа, но для денежных сумм есть некоторые особенности (например, связанные с правилами округления), которые делают более удобным использование специального типа данных, а не настройку числового типа;
счетчик – специальный тип данных для уникальных (не повторяющихся в поле) натуральных чисел с автоматическим наращиванием. Естественное использование – для порядковой нумерации записей;
логический – тип для хранения логических данных (могут принимать только, два значения, например "да" или "нет");
поле объекта OLE – специальный тип данных, предназначенный для хранения объектов OLE, например мультимедийных. Реально, конечно, такие объекты в таблице не хранятся. Как и в случае полей МЕМО, они хранятся в другом месте внутренней структуры файла базы данных, а в таблице хранятся только указатели на них (иначе работа с таблицами была бы чрезвычайно замедленной);
гиперссылка – специальное поле для хранения адресов URL Web-объектов Интернета. При щелчке на ссылке автоматически происходит запуск браузера и воспроизведение объекта в его окне;
мастер подстановок – это не специальный тип данных. Это объект, настройкой которого можно автоматизировать ввод в данных поле так, чтобы не вводить их вручную, а выбирать из раскрывающегося списка.
2. Основы Microsoft Office Access
2.1 Таблицы базы данных
В режиме таблицы добавляются, редактируются или просматриваются табличные данные. Также можно проверить орфографию и напечатать табличные данные, отфильтровать и отсортировать записи, изменить внешний вид таблицы или изменить структуру таблицы, добавив или удалив столбцы. В режиме конструктора таблицы можно создать целую таблицу, добавляя новые поля или удаляя и настраивая существующие поля таблицы.
Чтобы добавить поле, в верхней части окна таблицы в режиме конструктора следует ввести имя поля и определить его тип. Чтобы переименовать поле, необходимо изменить его имя в столбце <Имя поля>.
Уникальная метка, называемая ключом, используется для определения каждой записи таблицы. Ключевые поля в таблицах используются для создания межтабличных связей. Чтобы определить ключ, необходимо выделить строку с описанием нужного поля и нажмите кнопку <Ключ> на панели инструментов.
Тип данных определяет, какого вида данные допускается вводить в поле. Чтобы определить или изменить тип данных, выберите столбец <Тип данных>, нажмите в поле кнопку со стрелкой и выберите тип данных из списка.
2.2 Запросы базы данных
С помощью запросов можно просматривать, анализировать и изменять данные из нескольких таблиц. Они также используются в качестве источника данных для форм и отчетов. Наиболее часто используется запрос на выборку. При его выполнении данные, удовлетворяющие условиям отбора, выбираются из одной или нескольких таблиц и выводятся в определенном порядке. Запрос можно создать с помощью мастера или самостоятельно с помощью конструктора. Кроме того, запрос может быть записан в виде инструкции SQL.
Чтобы ограничить записи, которые следует включить в динамический набор при выполнении запроса, нужно определить условия отбора в строке <Условие отбора> для одного или нескольких полей.
Данные, возвращаемые в запросе, можно отсортировать в том или ином порядке. При указании порядка сортировки для нескольких полей Microsoft Access сортирует сначала крайние левые поля и далее слева направо.
2.3 Формы базы данных
Формы являются объектом базы данных, которые обычно используется для отображения данных в базе данных. Форма может быть кнопочной, открывающая другую форму или отчеты базы данных. Большинство форм являются присоединенными к одной или нескольким таблицам и запросам из базы данных.
Графические элементы, такие как линии и прямоугольники, сохраняются в макете формы. Связь между формой и ее источником записей создается при помощи графических объектов, которые называют элементами управления.
Эффективность формы повышается посредством добавления в нее разделов. Формы могут содержать следующие разделы: заголовок, верхний колонтитул, область данных, нижний колонтитул и примечание. Кроме того, форма может содержать другие формы – так называемые подчиненные формы. Это обеспечивает возможность построения достаточно сложных диалоговых систем.
Для навигации по записям формы имеются специальные кнопки перехода по записям, расположенные в нижней части формы. Аналогично таблицам, в форме можно производить поиск, проверять орфографию, сортировать и фильтровать выводимые данные.
Основу функционирования формы составляют процедуры обработки событий, написанные на VBA.
2.4 Отчеты базы данных
Отчет – это гибкое и эффективное средство для организации данных при выводе на печать. С помощью отчета имеется возможность вывести необходимые сведения в том виде, в котором требуется. С помощью отчетов возможно выполнение следующих действий:
добавление в отчет эмблемы или рисунка;
группировка записей по различным условиям;
вычисление итоговых значений;
представление данных на диаграмме.
Большая часть сведений в отчете берется из базовой таблицы, запроса или инструкции SQL, являющихся источниками данных для отчета. Другие сведения вводятся при разработке отчета.
На этапе проектирования отчета определяются заголовки таблично представляемых данных, поясняющие надписи, элементы графического оформления и т.п. Кроме того, возможно динамическое создание программным способом разричных элементов оформления в ходе форматирования отчета. Также на этапе проектирования определяются выражения для расчета итоговых значений.
Для создания связи между отчетом и исходными данными применяются элементы управления (аналогично использованию их в формах). Ими могут быть поля, содержащие имена или числа, надписи для заголовков, декоративные линии для графического оформления отчетов.
Создание отчетов во многом аналогично созданию форм. Отличие процедуры создания отчета от процедуры создания формы заключается в ориентации первой на последующий вывод на печать – т.е. диалог с пользователем весьма упрощен и носит односторонний характер. Иными словами, отчет ориентирован на вывод информации на бумажные носители, а форма – на ввод/вывод информации на текущий момент времени.
Вся информация в отчете разбивается на разделы, каждый из которых имеет специальное назначение. При печати разделы располагаются на страницах в определенном порядке. Например:
заголовок отчета;
верхний колонтитул;
область данных;
нижний колонтитул;
примечание отчета.
Заголовок отчета печатается в отчете один раз в самом начале отчета. Верхний колонтитул печатается вверху каждой страницы отчета. Область данных представляет собственно данные отчета. Нижний колонтитул печатается в нижней части каждой страницы отчета. Примечание отчета печатается один раз на последней странице отчета. Наличие того или иного раздела определяется конкретными требованиями к отчету.
В режиме конструктора на экране отображается макет каждого раздела отчета в одном экземпляре.
2.5 Макросы, модули, программы в MS ACCESS
Макросом называют набор из одной или более макрокоманд, выполняющих определенные операции, такие как открытие форм или печать отчетов. Макросы могут быть полезны для автоматизации часто выполняемых задач. Например, при нажатии пользователем кнопки можно запустить макрос, который распечатает отчет.
В MS ACCESS существует также специальный макрос AutoExec. Он позволяет автоматически выполнить макрокоманду или набор макрокоманд при открытии базы данных. В процессе открытия базы данных Microsoft Access проводит поиск макроса с этим именем и, если такой макрос существует, автоматически запускает его.
В ядре базы данных Microsoft Jet определены объекты, такие как таблицы, запросы, связи и индексы, с помощью которых выполняются операции сохранения и упорядочения данных в базах данных Microsoft Access. Такие объекты называют объектами доступа к данным (DAO). Программы Visual Basic, в которых используются объекты доступа к данным, могут применяться для совместной работы с другими приложениями, такими как Microsoft Excel, использующими ядро базы данных Jet.
Кроме того, в Microsoft Access определен ряд объектов, предназначенных непосредственно для обработки данных, таких как формы, отчеты и элементы управления.
Программы Visual Basic могут использоваться для создания процедур обработки событий.
Использование программ Visual Basic позволяет упростить взаимодействие пользователя с базой данных за счет предварительной разработки специальных процедур обработки данных. Важным понятием неразрывно связанным с программами Visual Basic является понятие модуля.
Существует два основных типа модулей: модули класса и стандартные модули. Каждая процедура в модуле может быть либо процедурой-функцией Function, либо процедурой sub>.
Модули форм и модули отчетов являются модулями класса, связанными с определенной формой или отчетом. Они часто содержат процедуры обработки событий, запускаемых в ответ на событие в форме или отчете. Процедуры обработки событий используются для управления поведением формы или отчета и их откликом на события, например, такие как нажатие кнопки.
При создании первой процедуры обработки события для формы или отчета автоматически создается связанный с ней модуль формы или отчета.
В языке Visual Basic для приложений (VBA) замкнутыми программными единицами являются процедуры. Процедура содержит набор инструкций и методов, с помощью которых выполняются действия или рассчитывается значение.
Существуют процедуры двух типов:
процедура-подпрограмма sub>, аналогично инструкциям Visual Basic, выполняет действие или набор действий, но не возвращает значение. Пользователь имеет возможность создавать процедуры sub> самостоятельно или использовать процедуры обработки событий, определенные в Microsoft Access.
процедура-функция Function (часто такие процедуры называют просто функциями) возвращает значение, например, полученное в результате расчетов. Visual Basic включает ряд встроенных функций; например, функция Now возвращает текущее значение даты и времени. В дополнение к встроенным функциям, пользователь имеет возможность самостоятельно создавать функции, которые называют специальными функциями.
Процедуры позволяют осуществлять более гибкое манипулирование данными и объектами базы данных, чем макросы.
3. Реализация базы данных
3.1 Постановка задачи
Основная задача данного курсового проекта – автоматизация и упрощение работы гостиницы. В данной БД должны быть предусмотрены такие операции, как: ведение списка постояльцев, учёт забронированных мест, ведение архива выбывших постояльцев за последний год А так же: получение списка свободных номеров (по количеству мест и классу), получение списка номеров (мест), освобождающихся сегодня и завтра, выдачу информации по конкретному номеру, автоматизацию выдачи счетов на оплату номера и услуг, получение списка забронированных номеров, проверку наличия брони по имени клиента и/или названию организации.
В качестве средства создания БД используем СУБД Microsoft Office Access 2003.
3.2 Концептуальная модель
На этапе концептуального проектирования необходимо представить взаимоотношения в нашей базе данных с помощью модели "сущность-связь". Основой данной модели является набор сущностей, таких как: постояльцы, номера, архив. Сущности описываются атрибутами. Связи между сущностями отображают отношения сущностей друг с другом.
Выделим атрибуты данных сущностей:
– Постояльцы. Атрибуты постояльцев – Фамилия, Место_работы, Контактный телефон, Занимаемый номер, Забронировал номер, Число брони, Дата заселения, Дата выселения.
– Номера. Атрибуты номеров – Номер, Количество комнат, Класс, Стоимость за сутки, Состояние, Число бронь, Дата Заселения, Дата Выселения.
– Архив. Атрибуты сущности Архив: Фамилия, Место работы, Контактный телефон, Занимаемый номер, Потратил денег, Дата заселения, Дата выселения.
Очень важным свойством модели "сущность-связь" является возможность её представления в виде графической схемы, что значительно облегчает анализ предметной области.
Такая ERD представлена на рисунке 1:
Рис.1. Концептуальная модель данных "Гостиница"
3.3 Логическая модель
БД "Гостиница" имеет несколько системных таблиц, в которых хранятся данные о клиентах: их информация, где поселены и т.п.
Таблицы являются объектом, которые содержат все данные, хранящиеся в БД. Никакие другие объекты не могут хранить данные, но они могут обращаться к данным в таблице.
Логическая модель является моделью, в которой учитываются возможности средств реализации БД. При этом сущности и их отношения концептуальной модели могут стать сущностями логической модели. Логическая модель представлена на рис. 2.
Рис.2. Логическая модель данных
3.4 Реализация
Рассмотрим физическую модель данных. Она представляет собой набор таблиц, описывающих сущности и содержащих их атрибуты.
Таблица "Постояльцы" содержит всю основную информацию о клиентах. Она имеет связь с таблицей "Номера". Имеется таблица "Архив". В ней содержится информация о клиентах добавленных в архив. Эта таблица не имеет связей с другими таблицами. Все выше описанные отношения представлены ниже.
access макрос запрос отчет
Таблица "Постояльцы"
Имя поля |
Тип данных |
Длина |
Фамилия |
Текстовый |
10 |
Место работы |
Текстовый |
10 |
Телефон |
Текстовый |
10 |
Занимаемый номер |
Числовой |
Длинное целое |
Забронировал номер |
Числовой |
Длинное целое |
Число брони |
Дата/время |
|
Дата заселения |
Дата/время |
|
Дата выселения |
Дата/время |
Таблица "Номера"
Имя поля |
Тип данных |
Длина |
Номер |
Числовой |
Длинное целое |
Количество комнат |
Числовой |
Длинное целое |
Класс |
Текстовый |
10 |
Стоимость |
Денежный |
|
Состояние |
Текстовый |
10 |
Число брони |
Дата/время |
|
Дата заселения |
Дата/время |
|
Дата выселения |
Дата/время |
Таблица "Архив"
Имя поля |
Тип данных |
Длина |
Фамилия |
Текстовый |
10 |
Место работы |
Текстовый |
10 |
Телефон |
Текстовый |
10 |
Занимаемый номер |
Числовой |
Длинное целое |
Потратил денег |
Денежный |
|
Дата заселения |
Дата/время |
|
Дата выселения |
Дата/время |
Заключение
В данной курсовой работе была спроектирована и реализована база данных "Гостиница". Разработанный программный продукт существенно облегчает работу гостиницы. В БД реализованы все функции, которые были предложены в задании. БД обладает удобным и простым интерфейсом.
В данной курсовой работе были рассмотрены основные теоретические положения, касающиеся баз данных:
- базы данных и системы управления базами данных;
- структура простейшей базы данных;
- свойства полей базы данных; типы данных.
Также были рассмотрены основы Microsoft Office Access:
- таблицы базы данных;
- запросы базы данных;
- формы базы данных;
- отчеты базы данных;
- макросы, модули, программы в MS ACCESS.
Библиографический список
Стандартная справка Microsoft Access 2003
Харитонова И.А. Самоучитель: Office Access 2003.- СПб.: Питер, 2004.- 464 с.: ил
Ахаян Р., Горев А., Макашарипов С. Эффективная работа с СУБД СПб.: Питер, 1997. 704 с