Главная страница

Курсовая БД Гостиницы. Курсовая работа. Построение системы управления базами данных


Скачать 0.58 Mb.
НазваниеПостроение системы управления базами данных
АнкорКурсовая БД Гостиницы
Дата06.05.2023
Размер0.58 Mb.
Формат файлаdoc
Имя файлаКурсовая работа.doc
ТипКурсовая
#1111836

МИНОБРНАУКИ РФ

ФГБОУ ВО Тверской государственный технический университет

Кафедра “Программное обеспечение”

Курсовая работа

Дисциплина: Среды разработки программных средств.

Тема: Построение системы управления базами данных

«Гостиница» на основе MSAccess.

Выполнил: студент группы

«Б.ПИН.РИС-21.06»

Судариков Павел Алексеевич

Проверил: Мальков Александр Анатольевич


Тверь, 2022 г.

Оглавление


Введение 4

Построение схемы данных 6

Создание таблиц 7

Формы 9

Способы создания: 9

Конструктор форм 10

Мастер форм 10

Запросы 14

Типы запросов 15

Пример программы для обработки запроса «Поиск по номеру заселения» 17

Отчеты 21

Создание отчета с помощью мастера отчетов 21

Создание отчета с помощью средства "Отчет" 22

Создание отчета с помощью средства "Пустой отчет" 22

Разделы отчета 23

Кнопочные формы 28

Заключение 32



Введение



База данных представляет собой совокупность взаимосвязанных, структурированных, совместно используемых фактов о некоторых объектах предметной области. Базы данных стали неотъемлемой частью нашей повседневной жизни. Они являются средством для рационального и эффективного хранения информации. Они обеспечивают надежную защиту информации от потери или порчи, экономно используют ресурсы и снабжены механизмами поиска информации, удовлетворяющими к разумным требованиям производительности.

Базы данных стали основой информационных систем и в корне изменили методы работы многих организаций. С момента своего появления технология баз данных стала увлекательной областью деятельности, а также катализатором многих значительных достижений в области.

Теория реляционных баз данных была разработана в начале 70-х годов на основе математической теории отношений. В реляционной базе данных все данные хранятся в виде таблиц , при этом все операции над базой данных сводятся к манипулированию таблицами .

Таблица представляет собой набор строк , каждая из которых разбита на ячейки и имеет уникальное имя в базе данных. База данных содержит множество таблиц, связь между которыми устанавливается с помощью совпадающих полей – ключей.

Проектирование баз данных является одним из самых важных элементов создания базы данных и состоит из трех стадий: концептуальной, логической и физической. Первая стадия предусматривает создание концептуальной модели данных, не зависящей от каких-либо характеристик.

Во второй стадии, назначение которой состоит в создании логической модели данных, концептуальная модель подвергается доработке посредством удаления элементов, которые не могут быть реализованы в реляционных системах. В третьей стадии логическая модель преобразуется в физический проект, предназначенной для реализации в конкретной целевой СУБД. При этом анализируются структуры хранения данных и методы доступа, необходимые для эффективной работы с базой данных, размещенной на внешних запоминающих устройствах.

Данные – это статистические значения, хранящиеся в таблицах, в то время как информация – это сведения, которые запрашиваются пользователем и предоставляются в наиболее удобном ему виде.

Сфера гостиничного бизнеса требует автоматизации ввиду огромного количества информации, необходимой для хранения, переработки и анализа. В основном это касается учета клиентов и их заселений, а также расчёта стоимостей номеров. Количество заседаний в гостинице - ключевой показатель работы гостиницы, поэтому автоматизация данного сегмента является важной задачей, подлежащей автоматизации.

Целью данной курсовой работы является автоматизация контроля клиентов и их заселений.

Задачи проектирования базы данных:

  1. Изучение задания и составление основной концепции и схем данных.

  2. Нормализовать данные таким образом, чтобы структура базы данных соответствовала третьей нормальной форме.

  3. Создание таблиц, запросов, форм, отчетов, и их реалицация.

  4. Реализовать 4 запроса разных видов с помощью VBA.

  5. Предоставить пользователю возможность вводить, изменять и сохранять данные с помощью форм на VBA.

  6. Реализовать два разных отчёта в MS Access, Word и Excel с помощью VBA.

  7. Разработать удобный интерфейс для работы с базой данных при помощи двухуровневой кнопочной формы.


Построение схемы данных
При проектировании РБД необходимо решить вопрос о наиболее эффективной структуре данных.

Основные цели проектирования:

1.Обеспечить быстрый доступ к данным таблицы.

2.Исключить ненужное повторение данных, которое является причиной ошибок при вводе и нерационального использования дискового пространства вашего компьютера.

3.Обеспечить целостность данных таким образом, чтобы при изменении одних объектов автоматически происходило соответствующее изменение связанных с ним объектов.

Процесс уменьшения избыточности информации в базе данных называется нормализацией. В теории нормализации базы данных разработаны достаточно формализованные подходы к разбиению данных, обладающих сложной структурой на несколько таблиц.

Теория нормализации структуры оперирует пятью нормальными формами таблиц. Каждая следующая нормальная форма должна удовлетворять требованиям предыдущей формы и некоторым дополнительным условиям. Ограничимся рассмотрением первых трех нормальных форм, поскольку при практическом проектировании баз данных четвертая и пятая формы используются в редких случаях.

Требования к первой нормальной форме:

1. Таблица не должна иметь повторяющихся групп полей.

2. В таблице должны отсутствовать повторяющиеся записи.

Требования ко второй нормальной форме:

1. Таблица должна удовлетворять условиям первой нормальной формы.

2. Любое не ключевое поле однозначно идентифицируется полным набором ключевых полей, входящих в составной ключ.

Требования к третьей нормальной форме:

1. Таблица удовлетворяет условиям второй нормальной формы.

2. Ни одно из не ключевых полей таблицы не идентифицируется с помощью другого не ключевого поля.

Основная цель: контроль успеваемости студентов, а именно по учету и просмотру результатов зачетной недели и сессии.

Деканату вуза требуется компьютеризировать систему печати ведомостей для экзаменов и зачетов. Следует вести перечни групп, списки студентов по группам, перечни предметов по группам. Требуется также хранить и распечатывать анкетные данные о студентах.

Нормализируем следующую таблицу 1, чтобы она соответствовала принципу нормализации таблиц:

Таблица 1 — Основные данные для БД «Гостиница».

Название

Адрес

Телефон

Ф.И.О. проживающею

Адрес

Организация

Пол

Дата прибытия

На сколько

Тип номера

Телефон дежурной


После чего получились 4 таблицы, построенных на третьей нормальной форме.

Рисунок 1 — Таблицы БД «Гостиница».

Создание таблиц
Таблица представляет собой набор строк, каждая из которых разбита на ячейки и имеет уникальное имя в базе данных. База данных содержит множество таблиц, связь между которыми устанавливается с помощью совпадающих полей – ключей.

Методы создания таблиц:

1.Режим Конструктор.

Задаются поля, тип данных для каждого из них и размеры для текстовых и числовых полей, установите ключевое поле и сохраните таблицу.

2.Режим Таблицы.

Можно сразу вводить данные. Access автоматически назначит тип поля по виду информации, которую вы вводите, и установит размеры текстовых и числовых полей. После закрытия и сохранения таблицы Access предложит вам либо установить ключевое поле самостоятельно, либо принять уже заданное в Access.

3.Мастер таблиц.

Выбираются поля из предложенных образцов таблиц. Тип данных и другие свойства полей уже определены.

Тип данных предлагаемых MSAccess:

  • текстовый (для хранения данных в виде текста или комбинации текста и цифр);

  • поле MEMO (для хранения данных в виде текста или комбинации текста и цифр);

  • числовой (для ввода чисел);

  • д (ввод чисел в денежном формате);

  • дата/время(ввод даты);

  • счётчик (автоматически нумерует записи);

  • логический (может содержаться только одно из двух значений);

  • гиперссылки (для хранения гиперссылок);

  • поле объекта OLE (документы, подготовленные в Word, Excel);

  • мастер подстановок (мастер создающий поле, связанное с полем).



Рисунок 2 — Таблица «Клиенты» при создании в режиме конструктора.
После создания всех таблиц, их нужно соединить с помощью связей. В MS access если следующие виды связей:

  1. Связи "один ко многим";

  2. Связи "многие ко многим";

  3. Связи "один к одному".

Cхема данных БД «Гостиница» представлена на рисунке 3:



Рисунок 3 — Схема связей БД «Гостиница»

Формы
Форма в Access — это объект базы данных, который можно использовать для создания пользовательского интерфейса для приложения базы данных. "Связанная" форма напрямую связана с источником данных, например, таблицей или запросом, и может использоваться для ввода, редактирования или отображения данных из этого источника.

Способы создания:


1. Мастер форм – представляет расширенные возможности по настройке формы.

2. Быстрые мастера – создают формы одного из трёх стандартных видов, включая в форму все поля выбранной таблицы или запроса.

3. Конструктор – позволяет «вручную» доработать форму до желаемого результата.

4. Мастера для создания специализированных форм (диаграмма, сводная таблица).

Конструктор форм


Создание формы с помощью мастера редко даёт удовлетворительный результат. Доработка формы происходит в режиме конструктора. Основные используемые инструменты:

  • панель элементов – позволяет ввести в форму любой элемент.

  • список полей – позволяет внести в макет формы поле связанной таблицы.

  • свойства – настройка всех элементов формы.

Мастер форм


Мастер форм представляет расширенные возможности по настройке формы по сравнению с быстрыми мастерами:

  1. В форму могут быть включены данные нескольких таблиц или запросов (выбранные таблицы должны быть связаны).

  2. Можно выбрать поля из списка доступных полей и задать будет ли поле отображено в форме.

  3. Установить режим вывода информации (таблица, лента, столбец или выровненный).

  4. Выбрать стиль оформления.

Форма «Заселения» в режиме конструктора представлена на рисунке 4:



Рисунок 4 — форма Заселения в режиме конструктора БД «Гостиница».
Форма «Клиенты» в режиме конструктора представлена на рисунке 5:



Рисунок 5 — форма Клиенты «Гостиница».

Для каждой формы я установил следующие свойства:

  • Убрал полосы прокрутки, область выделения, кнопки перехода по записям, кнопки развертывания, свертывания и закрытия окна.

  • Установил параметр границы: тонкая.

  • Добавил заголовок с примечанием. В заголовке отобразил название соответствующей таблицы.

  • Так же для каждой формы добавлены кнопки: «Добавить и сохранить» для добавления новых записей; кнопка «Изменить и удалить» для редактирования и удаления записей; в примечании кнопки «Первая, последняя запись, назад, дальше» для удобства перехода по записям; и кнопка «Закрыть» для закрытия формы.

  • Каждую кнопку реализовывает соответствующие программы написанные на VBA.

  • Соединение с базой данных устанавливается на этапе загрузки формы

Private Sub Form_Load()

cn.ConnectionString = "Provider=Microsoft.ACE.OLEDB.16.0;Data Source=C:\Users\Admin\Desktop\Курсовая\Гостиница.accdb;Mode=Share Deny None;"

cn.Open

rs.CursorLocation = adUseClient

On Error GoTo ErrorHandler

rs.Open "Клиенты", cn, adOpenDynamic, adLockOptimistic

rs.MoveFirst

TextBoxIdClient.Text = rs.Fields("Id Клиента").Value

TextBoxFirstName.Text = rs.Fields("Фамилия").Value

TextBoxSecondName.Text = rs.Fields("Имя").Value

TextBoxThirdName.Text = rs.Fields("Отчество").Value

TextBoxGender.Text = rs.Fields("Пол").Value

TextBoxAddress.Text = rs.Fields("Адрес").Value

TextBoxPhoneNamber.Text = rs.Fields("Телефон").Value

Exit Sub

ErrorHandler:

If ("База данных была приведена пользователем 'Admin' на компьютере 'DESKTOP-AEOHGQF' в состояние, препятствующее ее открытию или блокировке." = Err.Description) Then

DoCmd.Close

DoCmd.OpenForm "Клиенты"

Err.Clear

End If

If ("Операция не допускается, если объект открыт." = Err.Description) Then

MsgBox "Подключение уже установлено!"

End If

End Sub

Пример кнопки «Удалить»:

Private Sub CommandDelete_Click()

rs.Delete

TextBoxIdClient.Text = ""

TextBoxFirstName.Text = ""

TextBoxSecondName.Text = ""

TextBoxThirdName.Text = ""

TextBoxGender.Text = ""

TextBoxAddress.Text = ""

TextBoxPhoneNamber.Text = ""

End Sub

Пример кнопки «Дальше»:

Private Sub CommandNext_Click()

If (rs.EOF = False) Then rs.MoveNext

If (rs.EOF) Then

MsgBox ("Дальше нет данных")

Exit Sub

End If

TextBoxIdClient.Text = rs.Fields("Id Клиента").Value

TextBoxFirstName.Text = rs.Fields("Фамилия").Value

TextBoxSecondName.Text = rs.Fields("Имя").Value

TextBoxThirdName.Text = rs.Fields("Отчество").Value

TextBoxGender.Text = rs.Fields("Пол").Value

TextBoxAddress.Text = rs.Fields("Адрес").Value

TextBoxPhoneNamber.Text = rs.Fields("Телефон").Value

End Sub

Запросы
Запрос – вопрос к БД, ответом на который будет служить одна, ни одной, или несколько записей удовлетворяющих критериям запроса. Задаваемы в запросе условия – значения конкретных полей – называются критериями отбора.

Запросы позволяют:

  • фильтровать и сортировать данные;

  • производить расчёты;

  • группировать записи (рассчитывая различные итоговые значения);

  • вносить изменения сразу в несколько записей;

  • создавать таблицы, как результат запроса.



Типы запросов


  1. Запрос на выборку – осуществляет загрузку и отображение записей в режиме таблицы.

  2. Перекрёстный запрос – позволяет выполнить подсчёты (суммы, количество записей и средние значения) по данным одного поля таблицы. Результаты группируются в ячейках, соответствующих конкретным полям обсчитываемой БД.

  3. Запрос на изменение – помогает выполнить операции с записями, удовлетворяющими заданным критериям: запрос на удаление удаляет их таблицы заданные записи; запрос на обновление изменяет соответствующие записи таблицы; запрос на добавление добавляет в конец таблицы новые записи (соответствующие условиям отбора); запрос на создание таблицы создаёт новые таблицы, состоящие из заданных частей.

  4. Запрос с параметрами – позволяет ввести информацию, используемую в качестве критериев отбора.


В своей работе я создал 4 различных запросов (с точным совпадением, с неточным совпадением, с группировкой, с вычисляемым полем).

Результат каждого запроса выводится в динамически создаваемую форму.

Список всех запросов представлен на рисунке 6.



Рисунок 6 — Список запросов в БД «Гостиница»

Далее представлен запрос (рисунок 7) в режиме конструктора, с неточным поиском, который выводит данные клиентов, в Фамилии которых присутствуют заданные параметры «Не точный поиск» (начальные буквы/слоги фамилии).



Рисунок 7 — запрос поиск по Фамилии в режиме конструктора БД «Гостиница».
Далее представлен запрос после выполнения (рисунок 8). Введем, например, начальные буквы фамилии, так как реализован запрос с неточным поиском.



Рисунок 8 — запрос начального параметра в БД «Гостиница».
Далее (рисунок 9) получаем нужный результат:



Рисунок 9 — результат запроса в БД «Гостиница»
Если нам нужен запрос с точным совпадением, в условие отбора достаточно ввести квадратные скобки «[ ]». И в результате будет открыто диалоговое окно, предлагая ввести точные значения. Если внутри квадратных скобок написать текст, то диалоговое окно будет иметь сообщение с этим текстом.



Рисунок 9 — Запрос поиск по номеру заселения в режиме конструктора БД «Гостиница».


Рисунок 10 — Пример выполнения запроса с точным совпадением БД «Гостиница».
Пример программы для обработки запроса «Поиск по номеру заселения»

Private Sub CommandVisits_Click()

Dim comsql As String

Dim frm As Form

Dim ctl As Control

Dim i As Integer

Dim nomer As String

cn.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Users\Admin\Desktop\Курсовая\Гостиница.accdb;Persist Security Info=False;"

cn.Open

rs.CursorLocation = adUseClient

rs.CursorType = adOpenDynamic

rs.LockType = adLockOptimistic

nomer = InputBox("Введите № Заселения: ")

If (nomer = "" Or Not (IsNumeric(nomer))) Then

MsgBox ("Введено неверное значение")

cn.Close

Exit Sub

End If

comsql = "SELECT Заселения.[№ Заселения], Клиенты.Фамилия, Клиенты.Имя, Клиенты.Отчество, Клиенты.Телефон, Гостиницы.Название FROM Гостиницы INNER JOIN (Клиенты INNER JOIN Заселения ON Клиенты.[Id Клиента] = Заселения.[Id Клиента]) ON Гостиницы.Название = Заселения.Гостиница WHERE (((Заселения.[№ Заселения]) Like '%" & nomer & "%'));"

On Error GoTo ErrorHandler

rs.Open comsql, cn, adOpenKeyset

rs.MoveFirst

Set frm = CreateForm

With frm

.Caption = "Поиск по номеру заселения"

.ScrollBars = 0

.RecordSelectors = False

.NavigationButtons = False

.DividingLines = False

.AutoCenter = True

.BorderStyle = 3

.Section(0).Height = 3.862 * appCM

.Width = 10.926 * appCM

.HasModule = True

End With

Dim ctlText As Control

Dim intDataX As Integer, intDataY As Integer

intDataX = 100

intDataY = 100

i = 0

Set ctlText = CreateControl(frm.Name, acLabel, , "", "№ Заселения", intDataX, intDataY)

Set ctlText = CreateControl(frm.Name, acLabel, , "", "Фамилия", intDataX + 3000, intDataY)

Set ctlText = CreateControl(frm.Name, acLabel, , "", "Имя", intDataX + 6000, intDataY)

Set ctlText = CreateControl(frm.Name, acLabel, , "", "Отчество", intDataX + 11000, intDataY)

Set ctlText = CreateControl(frm.Name, acLabel, , "", "Телефон", intDataX + 14000, intDataY)

Set ctlText = CreateControl(frm.Name, acLabel, , "", "Гостиница", intDataX + 17000, intDataY)

intDataY = intDataY + 300

While i < rs.RecordCount

Set ctlText = CreateControl(frm.Name, acLabel, , "", rs.Fields("№ Заселения").Value, intDataX, intDataY)

Set ctlText = CreateControl(frm.Name, acLabel, , "", rs.Fields("Фамилия").Value, intDataX + 3000, intDataY)

Set ctlText = CreateControl(frm.Name, acLabel, , "", rs.Fields("Имя").Value, intDataX + 6000, intDataY)

Set ctlText = CreateControl(frm.Name, acLabel, , "", rs.Fields("Отчество").Value, intDataX + 11000, intDataY)

Set ctlText = CreateControl(frm.Name, acLabel, , "", rs.Fields("Телефон"), intDataX + 14000, intDataY)

Set ctlText = CreateControl(frm.Name, acLabel, , "", rs.Fields("Название"), intDataX + 17000, intDataY)

intDataY = intDataY + 300

rs.MoveNext

i = i + 1

Wend

DoCmd.OpenForm frm.Name

rs.Close

cn.Close

Exit Sub

ErrorHandler:

If ("База данных была приведена пользователем 'Admin' на компьютере 'DESKTOP-AEOHGQF' в состояние, препятствующее ее открытию или блокировке." = Err.Description) Then

DoCmd.Close

DoCmd.OpenForm "Для запросов"

Err.Clear

End If

End Sub

Так же добавлена обработка ошибок на случай если пользователь оставит поле «ввода» пустым или же введет неверные данные.

Пример:



Рисунок 11 — Диалоговое окно запроса БД «Гостиница».

Результат:



Рисунок 12 —Ошибка БД «Гостиница».

Отчеты
Отчёт – форма для обработки данных на бумажных носителях.

Содержание отчётов:

  1. Элементы оформления.

  2. Схемы и диаграммы.

  3. Верхние и нижние колонтитулы, содержащие служебную информацию.

  4. Графические элементы управления, в том числе фотографии и иллюстрации.

Режимы работы с отчётом:

  1. Конструктор

  2. Образец

  3. Предварительный просмотр

Создание отчета с помощью мастера отчетов

В мастере отчетов можно более точно настроить поля, которые требуется включить в отчет. При этом вы можете указать способ группировки и сортировки данных, а также добавить в отчет поля из нескольких таблиц или запросов, если отношения между ними заданы заранее.

  • на вкладке «Создание» в группе «Отчеты» выберите «Мастер отчетов»;

  • следуйте указаниям на страницах мастера отчетов. На его последней странице нажмите кнопку «Готово».


Создание отчета с помощью средства "Отчет"

Средство "Отчет" — это самый быстрый способ создания отчета, потому что при его использовании отчет формируется сразу же, без запроса дополнительной информации. В отчете будут представлены все записи базовой таблицы или запроса. Хотя получившийся отчет, скорее всего, будет далек от совершенства, он позволит быстро просмотреть базовые данные. После этого отчет можно сохранить и изменить в режиме макета или конструктора в соответствии с поставленной задачей.

  • В области навигации щелкните таблицу или запрос, на основе которых вы хотите создать отчет.

  • На вкладке «Создание» в группе «Отчеты» выберите «Отчет».

Access создаст отчет и отобразит его в режиме макета.

Создание отчета с помощью средства "Пустой отчет"

Если вам не подходят ни средство "Отчет", ни мастер отчетов, можно создать отчет с нуля при помощи средства "Пустой отчет". Это очень быстрый способ, особенно если в отчет нужно добавить всего несколько полей. Чтобы воспользоваться средством "Пустой отчет", выполните следующие действия:

  • на вкладке Создание в группе Отчеты выберите Пустой отчет;

  • в режиме макета будет открыт пустой отчет, а в правой части окна Access появится область "Список полей";

  • в области Список полей щелкните знак плюс (+) рядом с одной или несколькими таблицами, содержащими поля, которые вы хотите включить в отчет;

  • по очереди перетащите каждое из полей в отчет либо, нажав и удерживая клавишу CTRL, выберите несколько полей и перетащите их одновременно;



Разделы отчета



Отчет Access состоит из нескольких разделов. Разделы можно просматривать в режиме конструктора. Чтобы создавать полезные отчеты, необходимо понимать, для чего используется каждый раздел. Например, от того, в каком разделе размещается вычисляемый элемент управления, зависит то, как Access рассчитывает результаты.

В следующем списке описаны разделы отчета и их использование:

  • заголовок отчета. Печатается только один раз в начале отчета. В заголовок включается информация, обычно помещаемая на обложке, например, логотип компании, название отчета или дата. Если в заголовок отчета добавлен вычисляемый элемент управления, использующий агрегатную функцию Sum, сумма рассчитывается для всего отчета. Заголовок отчета печатается перед верхним колонтитулом.

  • верхний колонтитул. Печатается вверху каждой страницы. Верхний колонтитул используется в тех случаях, когда нужно, например, чтобы название отчета повторялось на каждой странице.

  • заголовок группы. Печатается в начале каждой новой группы записей. Заголовок группы служит для печати имени группы. Например, в отчете, сгруппированном по товарам, заголовок группы можно использовать для печати названия товара. Если в заголовке группы есть вычисляемый элемент управления с агрегатной функцией Sum, сумма вычисляется для текущей группы.

  • область данных. Этот раздел печатается один раз для каждой строки данных из источника записей. В нем размещаются элементы управления, составляющие основное содержание отчета.

  • примечание группы. Печатается в конце каждой группы записей. Примечание группы можно использовать для печати сводной информации о ней.

  • нижний колонтитул. Выводится в конце каждой страницы. Используется для нумерации страниц и печати сведений, относящихся к странице.

  • примечание отчета. Печатается один раз в конце отчета. Примечание отчета можно использовать для печати итогов и другой сводной информации по всему отчету.



Рисунок 13 — Отчет «Результаты стоимостей номеров» в режиме конструктора БД «Гостиница».

Список всех отчетов, созданных для БД «Гостиница» и их выводом в Word и Excel, представлен на рисунке 14.


Рисунок 14 — Список всех отчетов БД «Гостиница».

Далее представлены отчет «Общая сводка по Заселениям» и «Результаты стоимостей номеров» в БД «Гостиница» (рисунок 15):



Рисунок 15 — Отчет Общая сводка по Заселениям в БД «Гостиница».



Рисунок 16 — Отчет Результаты стоимостей номеров в БД «Гостиница».
Представление отчета в Excel и Word.

Word:



Рисунок 17 — вывод отчета в Word БД «Гостиница».
Excel:



Рисунок 18 — вывод отчета в Excel БД «Гостиница».


Кнопочные формы

Формы, содержащие только кнопки открытия других объектов БД, называются кнопочными формами и используются для создания управляющей надстройки для базы данных.

Для вывода всех объектов на экран для дальнейшего изменения данных реализовано двух уровневое кнопочное меню написанное программно на VBA. Форма, которая содержит только заголовок и кнопки называется кнопочной формой или меню. Первый уровень — это форма с кнопками которые содержат макрос. Этот макрос позволяет переходить на соответствующую форму для открытия конкретных объектов (например, форма для открытия таблиц).



Рисунок 19 — Кнопочное меню первого уровня в БД «Гостиница».



Рисунок 20 — Кнопочное меню для открытия запросов второго уровня БД «Гостиница».


Отладка программы


  1. MouseMove. Ошибка появляется если не включены элементы ActiveX. Решается подключением нужной библиотеки в «References» .



  1. Записи в Recordset переключались только вперёд. Исправляется добавлением параметра открытия «CursorType = adOpenDynamic».

  2. При добавлении записей в «Recordset» они не сохранялись. Решается выполнением команды «Update».

  3. Ошибка с «RecordSet’om» вызванная любым редактированием таблиц. Решение: Добавленим параметра «adLockOptimistic»

  4. При двойном нажатии на кнопки следующая запись или предыдущая запись появляется ошибка связанная с «Recordset.EOF/Recordset.BOF». Решается проверкой на «EOF» и «BOF» при перемещении курсора по «recordset’у».

  5. С каждым запуском формы «ComboBox» данные заполняются заново, отчего они переполнялись одними и теми же данными. Решается очищением элементов «ComboBox» перед его заполнением.

  6. Ошибка при запуске запроса с «Like» «Поиск по Фамилии» вызванная запросом SQL. Решение: Замена в SQL запросе звездочек Like '*" & fam & "*' на знак «%»



  1. Некорректный вывод данных отчета «Результаты стоимостей номеров». Решение: добавление расстояние между столбцами и записями «intDataX + расстояние» от столбца до столбца.


Заключение



Результатом выполнения курсовой работы стало разработанное приложение базы данных, позволяющее автоматизировать процесс обработки данных.

Средствами СУБД Microsoft Access создан удобный пользовательский интерфейс. Приложение позволяет решать все задачи, сформулированные в задании на курсовую работу.

Разработанная программа позволяет нам формировать статистику по клиентам и их заселениям.

Список использованных источников





  1. «Информатика. Практикум по технологии работы на компьютере»/ Под ред. Н.В. Макаровой, 2005г.

  2. «Практикум по Access» Золотова С.И., 2001г.

  3. «Проектирование структуры и создание реляционных баз данных средствами СУБД Access» Г.П.Виноградов, Н.В.Кирсанова, 2009г.

  4. MS Access. Использование форм для ввода и просмотра данных [Электронный ресурс]. URL:

http://lab314.brsu.by/roleg/BD_TiG/LR5t.htm, (15.11.2020)

  1. Базы данных и информационные системы. [Электронный ресурс]. URL: https://helpiks.org/7-64619.html, (15.11.2020).

  2. В.М. Гордуновский, С.А. Гутник, С.Ю. Самохвалов. Введение в системы баз данных. Учебное пособие. Под общей редакцией В.В. Григорьева.: Изд. МГИМО (Университет), 2000 г. [Электронный ресурс], (16.11.2020).

  3. Введение в базы данных и Microsoft Access. [Электронный ресурс]. URL: https://revolution.allbest.ru/programming/00240432_0.html (11.11.2020)

  4. Использование макросов в базе данных MicrosoftAccess [Электронный ресурс]. URL:https://pandia.ru/text/78/436/80582.php, (11.11.2020);

  5. Основные свойства полей MS ACCESS [Электронный ресурс]. URL: https://accesshelp.ru/osnovnye-svojstva-polej-ms-access/, (17.11.2020);

  6. Создание простого отчета [Электронный ресурс]. URL: https://support.microsoft.com/ru-ru/office/создание-простого-отчета-408e92a8-11a4-418d-a378-7f1d99c25304, (10.11.2020)




написать администратору сайта