Добавил:
Studfiles2 Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Гостиница / Писаревский

.DOC
Скачиваний:
47
Добавлен:
01.05.2014
Размер:
1.63 Mб
Скачать

Министерство образования РФ

Санкт-Петербургский государственный

электротехнический университет «ЛЭТИ»

Кафедра ВТ

ОТЧЁТ

по индивидуальной работе

разработка и реализация базы данных

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

Писаревский А. С.

Проверила:

Жирнова О. А.

Санкт-Петербург 2002 г.

РЕФЕРАТ

Отчет 34 с., 44 рис., 3 прил.

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

База данных разработана в MS Access 2000 в ОС Windows XP Professional. Ядро базы данных занимает 3108864 байт на жестком диске при
6 проживающих.

СОДЕРЖАНИЕ

1. РАЗРАБОТКА БАЗЫ ДАННЫХ 4

1.1Постановка задачи 4

1.2Анализ предметной области 4

1.3Использование ER-диаграмм 5

Все дальнейшие рассуждения основываются на правилах построения предварительных отношений из диаграмм ER-типа для реляционных баз данных [1, 2]. 5

1.4Разработка структуры базы данных 6

2 ОБЩИЕ СВЕДЕНИЯ ПРОГРАММИСТУ 7

2.1 Минимальные системные требования 7

2.2 Структура базы данных 7

2.3 Структура интерфейса пользователя 9

2.4 Рекомендации по использованию базы данных 11

3 ИНСТРУКЦИЯ ПОЛЬЗОВАТЕЛЯ 12

3.1 Назначение базы данных 12

3.2 Начало и завершение работы с базой данных 13

3.3 Информация для администратора. 13

Приложение А – Схема данных 25

Список всех номеров гостиницы 27

27

Список свободных номеров гостиницы 27

27

Список проживающих 27

1. РАЗРАБОТКА БАЗЫ ДАННЫХ

    1. Постановка задачи

Спроектировать базу данных, построить программу, обеспечивающую взаимодействие с ней в режиме диалога, для работников гостиницы. В БД должны храниться сведения о проживающих клиентах и служащих гостиницы, убирающих в номерах. Имеются номера трех типов: одноместный, двухместный и трехместный, от­личающиеся стоимостью проживания в сутки. Количество номеров в гостинице известно.

О каждом проживающем должна храниться следующая информация: номер паспорта, ФИО, город, из которого он прибыл, дата посе­ления в гостинице, выделенный гостиничный номер, на сколько дней выделен номер. Каждый номер характеризуется типом, стоимостью проживания, номером телефона. Номера упорядочены по этажам. О служащих гостиницы должна храниться следующая информация: ФИО, № этажа, где он убирает, день недели когда он убира­ет данный этаж. Служащий гостиницы убирает все № на одном этаже в определенные дни недели.

Работа с БД предполагает обслуживание следующих запросов:

– получение списка фамилий, проживающих в заданном номере,

– вычисление счета за проживание в гостинице,

– определение количества свободных мест и свободных номеров,

– получить список прибывших из заданного города,

– определить ФИО убирающего номер в заданный день недели у неко­торого проживающего.

Администратор БД может вносить следующие изменения:

– освобождение номера проживающим,

– изменение расписания уборки для служащего в указанный день недели,

– увольнение служащего гостиницы.

Необходимо предусмотреть возможность выдачи справки о счете за проживание в гостинице определенного клиента и отче­та о работе гостиницы за указанный срок (число клиентов, сколько дней был занят номер, сумма дохода гостиницы), о кол-ве свободных номеров гостиницы.

    1. Анализ предметной области

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

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

Необходимо, чтобы в БД хранились сведения о номерах, служащих (дни недели, когда служащий убирает заданные номера на одном этаже), проживающих в заданных номерах (также хранится кол-во дней на которое выделен определенный номер).

При выводе информации можно узнать следующие сведения:

– ФИО проживающего, номер паспорта проживающего, город из к-го он прибыл, кол-во дней на к-ое выделен номер;

– Номер комнаты проживающего, тип номера, номер телефона комнаты, кол-во человек проживающее в данный момент, стоимость проживания в сутки, этаж;

– ФИО служащего, номер этажа на к-рый он убирает 2 раза в неделю по заданным дням;

Администратор БД может вносить следующие изменения:

– Выселять нового проживающего;

– Изменять расписание уборки для служащего в указанный день недели;

– Увольнять служащего;

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

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

    1. Использование ER-диаграмм

Все дальнейшие рассуждения основываются на правилах построения предварительных отношений из диаграмм ER-типа для реляционных баз данных [1, 2].

Для создания отношений по бинарной связи “один – ко – многим” требуется сформировать 2 отношения: для связи таблиц «проживающие» и «номер» и для связи «служащие» и «номер».

Схема приведена на рисунке 1.

Служащий

Номер

1 n

Проживающие

Номер

n 1

Рисунок 1

    1. Разработка структуры базы данных

Исходя из ER-диаграмм предметной области, правил теории баз данных [1, 2] и общих соображений по эффективной организации систем следует, что нужно создать следующие сущности:

– Номер (Номер, Стоимость, Номер телефона, Состояние, Тип номера, Этаж);

– Проживающие (Номер паспорта, ФИО, Город, Дата поселения, Кол-во дней, Номер);

– Служащие (Этаж, ФИО, День недели1, День недели2);

Сущности «Номер», «Проживающие», «Служащие» созданы для того, чтобы реализовать отношения многие ко многим (в соответствии с правилами теории баз данных). Поэтому, получаем следующие связи между полученными сущностями.

Сущность «Номер» имеет связь один ко многим с сущностью «Проживающие»;

Сущность «Служащие» имеет связь один ко многим с сущностью «Номер»;

Таким образом,получаем сущности:

НОМЕР (Номер, Стоимость проживания, Номер телефона, Состояние, Тип номера, Этаж);

ПРОЖИВАЮЩИЕ (Номер паспорта, ФИО, Город, Дата поселения, Кол-во дней на которое выделен номер, Номер);

СЛУЖАЩИЕ (Этаж, ФИО, День недели 1, День недели 2).

2 ОБЩИЕ СВЕДЕНИЯ ПРОГРАММИСТУ

2.1 Минимальные системные требования

Для стабильной работы БД рекомендуется следующая минимальная конфигурация:

– Процессор x86 – совместимый илиALPHAна ядреWindows;

– ОЗУ 32 мегабайта;

– 300 Мб винчестер (ОС WindowsAccess2000БД).

БД занимает при 6 записях 2,99 Мб. При 100 записях 3,31 Мб.

Сами записи занимают совсем небольшое место на диске. При вводе малого количества проживающих размер БД может не увеличиться ни на байт. Это связано с размером страницы памяти, т.е. система следит за тем, чтобы размер файла БД был кратен размеру страницы. На процессорах x86 размер страницы составляет 4096 байт, а на процессорахALPHA– 8192 байт.

2.2 Структура базы данных

База данных NEW.mdbсоздана в среде разработкиMicrosoftAccess2000. Она содержит 3 таблицы, 18 запросов для извлечения информации, 18 форм для ввода и просмотра информации, и 4 отчета.

Схема данных приведена в приложении А.

База данных состоит из следующих таблиц: «Номер», «Проживающие», «Служащие».

Таблица «Номер» содержит информацию о номерах гостиницы.

Структура таблицы и свойства поля Номер приведены на рисунке 2.

Рисунок 2

Таблица «Проживающие» содержит информацию о проживающих. Структура таблицы приведена на рисунке 3.

Рисунок 3

Таблица «Служащие» содержит информацию о служащих.

Структура таблицы приведена на рисунке 4.

Рисунок 4

2.3 Структура интерфейса пользователя

База данных содержит следующие формы:

  • “Главная кнопочная форма” – главная кнопочная форма, с которой начинается работа с БД;

  • “Кол-во мест в одноместных/двухместных/трехместных номерах ” – информация о количестве свободных мест в соответствующих номерах;

  • “Номер” – просмотр информации о номерах;

  • “Номер для изменения” – форма для поселения и выселения проживающих в заданном номере;

  • “Номер (добавление)” – добавление информации о номерах;

  • “Номер - Проживающий” – просмотр информации о проживающих в заданном номере;

  • “Проживающие в заданном номере” – форма для вывода всех проживающих в заданном номере;

  • “Проживающие подчиненная форма” – просмотр сведений о проживающих;

  • “Проживающие подчиненная форма для изменения” – подчиненная формы “Номер для изменения”;

  • “Служащие” – просмотр списка служащих гостиницы;

  • “Служащие (Изменение)” – Изменение информации о служащих;

  • “Список номеров” – вывод списка номеров;

  • “Список прибывших из заданного города” – вывод списка прибывших из заданного города”;

  • “Стоимость проживания” – выдача счета за проживание, заданному проживающему;

  • “Убирающий, по фамилии проживающего” – выдача информации о служащем, убирающем у конкретного проживающего, в заданный день недели.

Для обеспечения требуемой функциональности используются следующие запросы (структура запросов приведена в приложении Б):

  • “Количество мест в одноместных/двухместных/трехместных номерах” – отбор информации о количестве свободных мест в номерах заданного типа;

  • “Проживающие в заданном номере” – отбор информации о всех проживающих в заданном номере;

  • “Результирующий отчет о работе (на основе 4-х отчетов)” – отбор информации для отчета о работе гостиницы, за указанный период;

  • “Свободные номера” – отбор информации для вывода списка свободных номеров;

  • “Список прибывших из заданного города” – отбор информации о проживающих, прибывших из заданного города;

  • “Стоимость проживания” – отбор информации для выдачи справки о счете за проживание, заданному проживающему;

  • “Сумма дохода” – Сумма дохода гостиницы за определенный период;

  • “Сумма дохода (подзапрос)” – подзапрос, соответствующего запроса;

  • “Убирающий (день недели)” – отбор информации о служащих, убирающих этаж в определенный день недели;

  • “Убирающий, по фамилии проживающего” – отбор информации о служащих убирающих в определенный день недели, у определенного проживающего;

  • “Число занятых номеров” – отбор информации о количестве занятых номеров за определенный срок;

  • “Число занятых номеров (подзапрос)” – подзапрос для соответствующего запроса;

  • “Число клиентов” – отбор информации о числе клиентов за определенный срок;

  • “Число клиентов(подзапрос)” - подзапрос для соответствующего запроса;

  • “Число свободных номеров” – отбор информации о числе свободных мест;

  • “Число свободных номеров (подзапрос)” - подзапрос для соответствующего запроса.

2.4 Рекомендации по использованию базы данных

Для обеспечения надежной работы с базой данных следует:

  • убедиться в наличии свободного пространства на диске, где будет установлена БД;

  • убедиться в наличии полного доступа к диску, где будет установлена БД (чтение и запись);

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

  • убедиться в отсутствии вирусов;

Желательно:

  • установить разрешение экрана 800x600, так как интерфейс пользователя оптимизирован для работы именно в этом разрешении;

  • наличие в системе принтера для печати отчетов и другой информации;

3 ИНСТРУКЦИЯ ПОЛЬЗОВАТЕЛЯ

3.1 Назначение базы данных

База данных предназначена для работников гостиницы. В БД должны храниться сведения о проживающих клиентах и служащих гостиницы, убирающих в номерах. Имеются номера трех типов: одноместный, двухместный и трехместный, от­личающиеся стоимостью проживания в сутки. Количество номеров в гостинице известно.

О каждом проживающем должна храниться следующая информация: номер паспорта, ФИО, город, из которого он прибыл, дата посе­ления в гостинице, выделенный гостиничный номер, на сколько дней выделен номер. Каждый номер характеризуется типом, стоимостью проживания, номером телефона. Номера упорядочены по этажам. О служащих гостиницы должна храниться следующая информация: ФИО, № этажа, где он убирает, день недели когда он убира­ет данный этаж. Служащий гостиницы убирает все № на одном этаже в определенные дни недели.

Работа с БД предполагает обслуживание следующих запросов:

– получение списка фамилий, проживающих в заданном номере,

– вычисление счета за проживание в гостинице,

– определение количества свободных мест и свободных номеров,

– получить список прибывших из заданного города,

– определить ФИО убирающего номер в заданный день недели у неко­торого проживающего.

Администратор БД может вносить следующие изменения:

– освобождение номера проживающим,

– изменение расписания уборки для служащего в указанный день недели,

– увольнение служащего гостиницы.

Необходимо предусмотреть возможность выдачи справки о счете за проживание в гостинице определенного клиента и отче­та о работе гостиницы за указанный срок (число клиентов, сколько дней был занят номер, сумма дохода гостиницы), о кол-ве свободных номеров гостиницы.

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

Таблица 1

Обозначение кнопки

Назначение

Переход к следующей записи;

Переход к предыдущей записи;

Выход;

Удалить запись;

Найти запись;

Добавить запись;

Закрыть форму;

Распечатать данные.

3.2 Начало и завершение работы с базой данных

Работа начинается с того, что Вам будет представлена информация, приведенная на рисунке 5.

Рисунок 5

Для получения различной справочной информации (п. 3.3) нажмите одну из трех кнопок раздела «Информация для администратора».

Для внесения изменений и добавления новых данных (подраздел 3.4) нажмите одну из трех кнопок раздела «Служебная информация»

Для выхода из базы данных нажмите кнопку «Выход».

3.3 Информация для администратора.

3.3.1 Для отображения, поиска и редактирования нужной вам информации, нажмите одну из трех кнопок (см. рисунок 5).

– Номера-Проживающие (п. 3.3.2 );

– Проживающие (п. 3.3.3 );

– Поселение/Выселение проживающих (п. 3.3.4).

Далее – можно продолжить работу с любой из указанных форм или к п. 3.2.

3.3.2 При нажатии на кнопку «Номера-Проживающие» (смотри рисунок 5) Вы попадаете в следующий пункт меню, изображенный на рисунке 6.

Рисунок 6

В данной форме отображается информация о номере, а именно: «номер», «стоимость», «номер телефона», «состояние (кол-во человек в номере)», «тип номера», «этаж». В рамке «информация о номерах» расположены кнопки: Найти номер, и переходы по записям с информацией о номерах.

При нажатии на кнопку «Найти номер» появляется окно, как показано на рисунке 7.

Рисунок 7

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

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

Кнопка «получение счета за проживание» выводит счет за проживание определенного (ввод с клавиатуры, рисунок 8) проживающего, как показано на рисунке 8:

Рисунок 8

Рисунок 9

В данной форме можно также распечатать данные.

При нажатии на кнопку «Прибывшие из заданного города», также появляется окно, где предлагается ввести город, рисунок 10.

Рисунок 10

После ввода города появляется список всех прибывших из заданного города, как показано на рисунке 10.

Рисунок 11

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

При нажатии на кнопку «Список проживающих» выводится весь список проживающих гостиницы Рисунок 12.

Рисунок 12

Здесь также есть возможность поиска, интересующей информации, и возможно удаление записи о проживающем (нажатие на кнопку с «мусорным ведром») смотри рисунок 13.

Рисунок 13

При нажатии на кнопку «Список проживающих в заданном номере», предлагается ввести желаемый номер, как было описано выше, и далее выводится список с найденными данными, как показано на рисунке 14.

Рисунок 14

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

Рисунок 15

При нажатии на кнопку «Выход» пользователь закрывает данную форму.

3.3.3 При нажатии на кнопку «Проживающие» в главной кнопочной форме, пользователь выводит список всех проживающих, который в полной мере был описан в п. 3.3.2 (см. рисунок 12).

3.3.4 При нажатии на кнопку «Поселение/Выселение проживающих» в главной форме, пользователь открывает форму «Поселение-Выселение проживающих», как показано на рисунке 16.

Рисунок 16

В целом форма является копией формы «Номер-проживающий», описанной выше, но имеется возможность добавления и редактирования информации, путем ввода данных в соответствующие поля формы. Есть возможность поиска информации и перемещения по записям. Для выхода нажмите кнопку с дверью на рисунке.

    1. Служебные данные.

3.4.1 Для отображения, поиска и редактирования нужной вам информации, нажмите одну из трех кнопок (см. рисунок 5).

– Номера (п. 3.4.2 );

– Служащие (п. 3.4.3 );

– Просмотр отчета о работе гостиницы (п. 3.4.4).

Далее – можно продолжить работу с любой из указанных форм или к п. 3.2.

3.4.2 При нажатии на кнопку «Номера» главной формы, появляется форма показанная на рисунке 17.

Рисунок 17

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

Далее рассмотрены возможные действия в рамке «Изменение информации»:

В рамке «Изменение информации» расположены 2 кнопки: «Добавить информацию о номере», «Удалить информацию о номере», нажатие на первую приводит к форме «добавление номера», рисунок 18.

Рисунок 18

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

При нажатие на кнопку «Удалить информацию о номере» появится сообщение, описанное выше.

Возможные действия в рамке «Номера гостиницы»:

При нажатие на кнопку «Список всех номеров гостиницы», из рамки «номера гостиницы», появится форма, показанная на рисунке 19.

Рисунок 19

Есть возможность поиска и печати списка с информацией.

Возможные действия в рамке «Количество свободных мест»:

При нажатии одной из трех кнопок «Количество мест в одноместных/двухместных/трехместных номерах», рамки «кол-во свободных мест», выводятся следующие формы соответственно рисунок 20, 21, 22.

Рисунок 20

Рисунок 21

Рисунок 22

Кнопка «Список свободных номеров» выводит список свободных номеров, с возможностью поиска, как показано на рисунке 23.

Рисунок 23

Кнопка «Печать свободных номеров» выводит список свободных номеров на печать.

3.4.3 При нажатии на кнопку «»Служащие» главной формы, открывается форма «Служащие», как показано на рисунке 24.

Рисунок 24

Здесь также расположены информационные поля о служащих.

Есть возможность перехода по записям.

В рамке «Служебная информация» находятся 3 кнопки: «Найти служащего», «Добавить служащего», «Удалить служащего».

Первая кнопка вызывает стандартную процедуру поиска, описанную много раз, выше. Кнопки «Добавить служащего» и «Уволить (удалить) служащего», вызывают форму, показанную на рисунке 25.

Рисунок 25

Где вся информация изменяется путем выбора нужных значений из полей со списком. Например для увольнения служащего в поле ФИО надо выбрать «Вакансия», а для изменения расписания выбрать нужные дни.

Кнопка «Определить убирающего у конкретного проживающего в указанный день недели», после ввода ФИО проживающего и дня недели выводит форму, показанную на рисунке 26.

Рисунок 26

3.4.4 Кнопка «просмотр отчета о работе гостиницы» после ввода начальной и конечной даты выводит отчет о работе гостиницы.

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

1. Бекаревич Ю., Пушина Н. MicrosoftACCESS2002: Самоучитель / СПб: БХВ-Петербург, 2004. – 357с.

2. Васильев В.В., Тимофеев А.О. Базы данных: Учеб. Пособие / СПб: СПбГЭТУ, 1998. – 80с.

Приложение А – Схема данных

Приложение Б - Пример отчета

Итоговый отчет о работе гостиницы

Число занятых номеров 4

Сумма дохода гостиницы 6 260,00р.

Число клиентов 4

Число свободных номеров 4

20 апреля 2005 г. Страница 1 из 1

Список всех номеров гостиницы

Список свободных номеров гостиницы

Список проживающих

Приложение Г

Приложение В - Структура запросов

Запрос «Кол-во мест в одноместных номерах» используется для определения мест в одноместных номерах. С условием отбора по полю «Тип номера» (Рисунок 27).

Рисунок 27

Запрос «Кол-во мест в двухместных номерах» используется для определения мест в двухместных номерах. С условием отбора по полю «Тип номера» (Рисунок 28).

Рисунок 28

Запрос «Кол-во мест в трехместных номерах» используется для определения мест в трехместных номерах. С условием отбора по полю «Тип номера» (Рисунок 29).

Рисунок 29

Запрос «Проживающие в заданном номере» используется для определения проживающих в заданном номере (Рисунок 30).

Рисунок 30

Запрос «Результирующий отчет о работе (на основе 4-х отчетов)» используется для создания результирующего отчета о работе гостиницы (Рисунок 31).

Рисунок 31

Запрос «Свободные номера» используется для вывода информации о свободных номерах. С условием отбора по полю «состояние» (Рисунок 32).

Рисунок 32

Запрос «Список прибывших из заданного города» используется для вывода списка информации о прибывших из заданного города (Рисунок 33).

Рисунок 33

Запрос «Стоимость проживания» используется для выдачи справки о счете за проживание отдельного проживающего. Используется вычисляемое поле «Счет за проживание» (Рисунок 34).

Рисунок 34

Запрос «Сумма дохода» используется для определения суммы дохода гостиницы за определенный срок. Используется групповая операция Sum(Рисунок 35).

Рисунок 35

Запрос «Сумма дохода (подзапрос)» подзапрос для запроса «Сумма дохода» используется для определения дохода по каждому из номеров за указанный срок. Используется вычисляемое поле, для определения прибыли (Рисунок 36).

Рисунок 36

Запрос «Убирающий (день недели)» используется для определения рабочего по дню недели (Рисунок 37).

Рисунок 37

Запрос «Убирающий, по фамилии проживающего» используется для определения рабочего по определенному дню недели и конкретному проживающему (Рисунок 38).

Рисунок 38

Запрос «Число занятых номеров» используется для определения числа занятых номеров за определенный срок. Используется групповая операция Sum(Рисунок 39).

Соседние файлы в папке Гостиница