Гостиничный комплекс

Автор работы: Пользователь скрыл имя, 12 Сентября 2013 в 11:06, курсовая работа

Описание работы

Разработать информационную систему гостиничного комплекса, которая несет собой следующую информацию: занятость номеров, заказ (дата заказа, дата въезда/выезда, стоимость), сведения о клиенте, занимающего тот или иной номер (ФИО, сведения о документе, удостоверяющем личность, адрес) и о самом номере (расположение, вид, стоимость периодичность обслуживания), а также использование служб быта: ежедневная уборка номера, прачечная, химчистка, питание (рестораны, бары) и развлечения (бассейн, сауна, бильярд и пр.).

Содержание работы

Введение 3
1. Задание 4
2. Построение инфологической концептуальной модели (ER-модели) 6
3. Построение реляционной схемы из ER-модели данных 10
4. Описание приложения 13
5. Проектирование форм, запросов и отчетов 16
6. Код программы 21
7. Тестирование базы данных 22
Список использованной литературы 28

Файлы: 1 файл

Курсовая работа по Базе Данных - Гостиничный комплекс.doc

— 2.71 Мб (Скачать файл)

Министерство образования и  науки Российской Федерации

Федеральное агентство по образованию

ГОУВПО “Комсомольский-на-Амуре  государственный технический университет”

Факультет компьютерных технологий

Кафедра информационных систем

 

 

 

 

 

 

 

 

 

 

 

 

 

 

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

по курсу:

«Базы данных»

на тему:

«Гостиничный комплекс»

 

 

 

 

Руководитель работы

______________

«____»_______________2009 г.

Исполнитель

студент группы

______________ «____»_______________2009 г.

 


 

 

2009 г.

Содержание

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Введение

 

Данная курсовая работа направлена на:

  • закрепление знаний и умений по дисциплине Базы данных
  • выработку новых навыков в создании реляционных баз данных
  • получение навыков разработки ИС

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1. Задание

 

Разработать информационную систему гостиничного комплекса, которая несет собой следующую информацию: занятость номеров, заказ (дата заказа, дата въезда/выезда, стоимость), сведения о клиенте, занимающего тот или иной номер (ФИО, сведения о документе, удостоверяющем личность, адрес) и о самом номере  (расположение, вид, стоимость периодичность обслуживания), а также использование служб быта: ежедневная уборка номера, прачечная, химчистка, питание (рестораны, бары) и развлечения (бассейн, сауна, бильярд и пр.).

Необходимо составить пакет из процедур и функций, который позволяет:

  1. получить  перечень  и  общее число  постояльцев,  заселявшихся  в  номера с указанными характеристиками за некоторый период;
  2. получить список свободных номеров на данный момент;
  3. получить сведения о постояльце из заданного номера: его счет гостинице за дополнительные   услуги, виды услуг, которыми он пользовался;
  4. получить сведения о наиболее часто посещающих гостиницу постояльцах;
  5. получить список занятых сейчас номеров, которые освобождаются к указанному сроку;
  6. получить сведения о конкретном номере: кем он был занят в определенный период.

 

 

Список требований к выполнению работы:

  1. Построить инфологическую концептуальную модель (ER-модель), для чего:
  • Проанализировав  предметную  область,  при  необходимости  уточнив  и  дополнив ее, выявить необходимый набор сущностей;
  • Определить требуемый набор атрибутов для каждой сущности, выделив идентифицирующие атрибуты;
  • Определить связи между объектами;
  • Описать полученную ER-модель на языке инфологического проектирования и на языке ER-диаграмм.
  • Получить реляционную схему из ER-модели, для чего:
  • Построить набор необходимых отношений базы данных;
  • Выделить первичные и внешние ключи определенных отношений;
  • Привести полученные отношения к третьей нормальной форме;
  • Определить ограничения целостности для внешних ключей отношений и для отношений в целом.
  1. Используя имеющуюся СУБД создать спроектированную базу данных.
  1. На языке SQL записать выражения для указанных в варианте задания типов запросов.
  2. Проверить работоспособность написанных запросов в интерактивном режиме.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2. Построение инфологической концептуальной модели (ER-модели)

 

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

Опишем, какими свойствами обладает каждый класс объектов для  нашей конкретной задачи:

  • «Заказ» - номер заказа, дата заказа, дата прибытия, дата выезда, номер клиента, № номера, стоимость заказа.
  • «Клиент» - ФИО, номер клиента, номер паспорта, серия, адрес, гражданство
  • «Описание номера» - № номера, расположение, вид.
  • «Класс обслуживания» - вид номера, стоимость номера, периодичность обслуживания.
  • «Перечень услуг» - номер услуги, наименование, стоимость, ед. измерения.
  • «Используемые услуги» - номер заказа, номер услуги, дата, количество, общая стоимость.

Изобразим графически каждый объект и его свойства (см. рис. 1 - 6).

Рис. 1 Изображение связи «Объект - Свойство» для объекта «Заказ»

 

 

Рис. 2 Изображение связи «Объект- Свойство» для объекта «Клиент»

 

 

Рис. 3 Изображение связи «Объект - Свойство» для объекта «Описание номера»

 

Рис. 4 Изображение связи «Объект - Свойство» для объекта «Класс обслуживания»

 

Рис. 5 Изображение связи «Объект - Свойство» для объекта «Перечень услуг»

 

Рис. 6 Изображение связи «Объект - Свойство» для объекта «Используемые  услуги»

 

 

Однако инфологическая модель предполагает наличие в себе отображения не только отдельных  объектов и их свойств, но также связей между различными объектами. Изобразим графически инфологическую модель всей базы данных (см. рис. 7).

 

 

Рис. 7 Инфологическая модель базы данных гостиничного комплекса

 

 

 

 

 

 

 

 

 

 

3. Построение реляционной  схемы из ER-модели данных

 

Следующим шагом выполнения курсовой работы было построение реляционной схемы базы данных из ER-модели. Для этой цели были использованы следующие правила:

  1. Для каждого простого объекта и его единичных свойств строится таблица, атрибутами которой являются идентификатор объекта и реквизиты, соответствующие каждому из свойств.
  2. Если у объекта имеются множественные свойства, то каждому из них ставиться в соответствии отдельная таблица.
  3. Если между объектом и его свойствам имеется условная связь, то при отображении в реляционной модели возможны следующие варианты:
  • Если многие из объектов обладают рассматриваемым свойством, то его можно хранить в базе данных так же, как и обычное.
  • Если только незначительное число обладает указанным свойством, то при использовании предыдущего решения для многих записей в таблице значение соответствующего поля будет пустым. Для устранения этого недостатка выделяют отдельную таблицу, которая включает в себя идентификатор объекта и атрибут, соответствующий рассматриваемому свойству (аналогично пункту 2).
  1. Если у объекта имеется составное свойство, то составляющие составного свойства либо помещаются в отдельные поля реляционной таблицы, либо в одно поле.
  1. Если связь между объектами 1:1 и классы принадлежности обоих объектов являются обязательными, то для отображения данных объектов и связей между ними можно:
  • Использовать одну таблицу, первичным ключом которой может быть идентификатор любого из двух объектов.
  • Для каждого из этих объектов использовать отдельные таблицы, а связь между ними отразить включив в одну из таблиц идентификатор связанного объекта из другой таблицы.
  1. Если связь между объектами 1:1 и класс принадлежности одного объекта является обязательным, а другого – нет, то для каждого из этих объектов используют отдельные таблицы, а идентификатор объекта, для которого класс принадлежности является необязательным, добавляется в таблицу, соответствующую тому объекту, для которого класс принадлежности обязателен.
  1. Если между объектами связь 1:1 и класс принадлежности является необязательным, то следует воспользоваться тремя таблицами: по одной для каждого объекта и одну для отображения связи между ними.
  2. Если между объектами связь 1:М и класс принадлежности одного из них обязателен, то используют две таблицы – по одной для каждого объекта. При этом в таблицу, соответствующую объекту, класс принадлежности которого является обязательным, добавляется идентификатор второго объекта.
  3. Если между объектами предметной области имеется связь 1:М и оба класса принадлежности не обязательны, то поступают аналогично пункту 7 (создают три таблицы: по одной для каждого объекта и одну для связи между ними)
  4. Если между объектами предметной области имеется связь М:М, то для хранения информации требуется три таблицы: по одной для каждого объекта и одна для отображения связи между ними (классы принадлежности могут быть любыми).
  5. Агрегированному объекту, имеющему место в предметной области, ставится в соответствии одна таблица, атрибутами которой являются идентификаторы всех объектов, задействованных в данном агрегированном объекте, а так же реквизиты, соответствующие свойствам этого объекта.

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

  1. При отображении обобщенных объектов могут быть приняты разные решения:
  • Всему обобщенному объекту может быть поставлена в соответствии одна таблица.
  • Каждой из категорий ставится в соответствии отдельная таблица, которая содержит в себе идентификатор объекта, общие свойства и свойства данной категории.

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

  1. При отображении составного объекта так же возможны варианты:
  • Если речь идет о составе изделий, то между изделием и деталью связь будет М:М. В этом случае – см. пункты 7, 9, 10.
  • Если речь идет о составе какой-нибудь организации, то между объектами скорее всего будет связь 1:М. В этом случае – см. пункты 8, 9.

 

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

Заказ (Номер заказа, Дата заказа, Дата прибытия, Дата выезда, Номер клиента, № номера, Стоимость);

Клиент (ФИО, Номер клиента, Номер паспорта, Серия, Адрес, Гражданство);

Описание номера (№ Номера, Расположение, Вид);

Класс обслуживания (Вид номера, Стоимость номера, Периодичность обслуживания);

Перечень услуг (Номер услуги, Наименование, Стоимость, Ед. измерения);

Используемые услуги (Номер заказа, Номер услуги, Дата, Количество, Общая стоимость).

 

Проверим соответствие данной модели нормальной форме Бойса-Кодда.

Данная модель удовлетворяет  1НФ, т.к. все атрибуты всех отношений имеют и всегда будут иметь атомарные значения.

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

Данная модель удовлетворяет 3НФ, т.к. она удовлетворяет 2НФ и никакой  не ключевой атрибут не зависит от другого не ключевого атрибута.

Данная модель удовлетворяет НФБК, т.к. она удовлетворяет 3НФ и каждый из детерминантов отношений модели является ее ключом.

 

4. Описание приложения

 

Для хранения данных было создано 6 таблиц, структура которых приведена в таблице 1.

Информация о работе Гостиничный комплекс