РАЗРАБОТКА РАСПРЕДЕЛЕННОЙ БАЗЫ ДАННЫХ ТУРИСТИЧЕСКОЙ ФИРМЫ НА ОСНОВЕ MS SQL SERVER - Студенческий научный форум

VIII Международная студенческая научная конференция Студенческий научный форум - 2016

РАЗРАБОТКА РАСПРЕДЕЛЕННОЙ БАЗЫ ДАННЫХ ТУРИСТИЧЕСКОЙ ФИРМЫ НА ОСНОВЕ MS SQL SERVER

Спиридонов А.В. 1
1Балаковский инженерно-технологический институт - филиал НИЯУ МИФИ
 Комментарии
Текст работы размещён без изображений и формул.
Полная версия работы доступна во вкладке "Файлы работы" в формате PDF

Введение

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

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

В соответствии с этим необходимо решить следующие задачи:

  • провести анализ предметной области;

  • построить концептуальную модель базы данных;

  • выбрать СУБД для разработки базы данных;

  • построить логическую модель базы данных;

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

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

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

  • внесение данных о турах;

  • бронирование туров в отелях;

  • организация трансферов;

  • внесение данных о клиентах;

  • внесение информации о проданных турах.

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

Сформулированы следующие основные условия: в одну страну может быть несколько туров, но каждый тур предусматривает посещение только одной страны; один менеджер курирует несколько туров, но каждый тур имеет только одного менеджера-куратора.

Пользователями базы данных могут быть менеджеры и директор фирмы, а также клиенты.

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

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

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

  1. Концептуальная модель базы данных

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

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

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

  • информация, характеризующая клиентов, в частности: ФИО клиента, дата рождения клиента, адрес клиента, телефон клиента;

  • информация, характеризующая менеджеров, в частности: ФИО менеджера, дата рождения менеджера, адрес менеджера, телефон менеджера;

  • информация, характеризующая процесс продажи путевки, в частности: название тура, дата продажи, дата начала тура, дата окончания тура, стоимость тура, ФИО клиента.

К сущностям предметной области относятся: Клиенты, Туры.

Сущность Клиенты имеет следующие атрибуты (свойства):

- Код клиента

- Фамилия клиента

- Имя клиента

- Отчество клиента

- Дата рождения клиента

- Адрес клиента

- Телефон клиента

Сущность Туры имеет следующие основные атрибуты:

- Код тура

- Название тура

- Курорт

- Проживание

- Длительность тура

- Менеджер

Выделим из сущности Туры сущности-обозначения: Менеджеры, Курорт.

Сущность Менеджеры имеет следующие основные атрибуты:

- Код менеджера

- Фамилия менеджера

- Имя менеджера

- Отчество менеджера

- Дата рождения менеджера

- Адрес менеджера

- Телефон менеджера

Сущность Курорт имеет следующие основные атрибуты:

- Код курорта

- Название курорта

- Страна

Изобразим это в виде диаграммы «Сущность-Связь» (ER-диаграммы).

1

М

1

М

Выделим из сущности Курорт сущность-обозначение Страна, которая имеет следующие основные атрибуты:

- Код страны

- Название страны

- Визовый режим

Изобразим это в виде диаграммы «Сущность-Связь» (ER-диаграммы).

Между сущностью Клиенты и сущностью Туры есть смысловая связь: «Туры продаются клиентам».

продаются

M N

Связь Продаются имеет размерность M:N, то есть «многие-ко-многим», так как один тур может продаваться многим клиентам и один клиент может купить много туров. Представим данную связь двумя связями «один-ко-многим» и ассоциацией Продажа.

Получаем окончательный вариант ER-диаграммы.

1

М

1 1

М М

1

М 1

1

1

  1. Логическая модель базы данных

База данных должна удовлетворять следующим эксплуатационным требованиям:

  • База данных должна удовлетворять актуальным информационным потребностям;

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

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

  • База данных должна легко расширяться при реорганизации и расширении предметной области;

  • База данных должна легко изменяться при изменении программной и аппаратной среды;

  • Загруженные в базу данных корректные данные должны оставаться корректными;

  • Данные до включения в базу данных должны проверяться на достоверность;

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

Для разработки базы данных была выбрана система управления реляционными базами данных Microsoft SQL Server. Основной используемый язык запросов — Transact-SQL, который является реализацией стандарта ANSI/ISO по структурированному языку запросов (SQL) с расширениями.

Составим таблицы сущностей, в которые будут внесены все атрибуты сущности с описанием требований по обеспечению целостности.

Таблица 1 – Таблица атрибутов для сущности «Страна»

Поле

Ключи

Размер

Формат

Свойства

Код страны

первичный ключ

11

bigint

Not null

Название

отсутствует

50

char

Not null

Таблица 2 – Таблица атрибутов для сущности «Курорт»

Поле

Ключи

Размер

Формат

Свойства

Код курорта

первичный ключ

11

bigint

Not null

Название

отсутствует

50

char

Not null

Код страны

внешний ключ

11

bigint

Not null

Таблица 3 – Таблица атрибутов для сущности «Проживание»

Поле

Ключи

Размер

Формат

Свойства

Код проживания

первичный ключ

11

bigint

Not null

Класс отеля

отсутствует

50

char

Not null

Таблица 4 – Таблица атрибутов для сущности «Менеджер»

Поле

Ключи

Размер

Формат

Свойства

Код менеджера

первичный ключ

11

bigint

Not null

Фамилия

отсутствует

50

char

Not null

Имя

отсутствует

50

char

Not null

Отчество

отсутствует

50

char

Not null

Дата рождения

отсутствует

-

date

Not null

Адрес

отсутствует

50

char

Not null

Таблица 5 – Таблица атрибутов для сущности «Клиент»

Поле

Ключи

Размер

Формат

Свойства

Код клиента

первичный ключ

11

bigint

Not null

Фамилия

отсутствует

50

char

Not null

Имя

отсутствует

50

char

Not null

Отчество

отсутствует

50

char

Not null

Дата рождения

отсутствует

-

date

Not null

Адрес

отсутствует

50

char

Not null

Таблица 6 – Таблица атрибутов для сущности «Туры»

Поле

Ключи

Размер

Формат

Свойства

Код тура

первичный ключ

11

bigint

Not null

Название

отсутствует

50

char

Not null

Длительность

отсутствует

11

bigint

Not null

Код курорта

внешний ключ

11

bigint

Not null

Код менеджера

внешний ключ

11

bigint

Not null

Таблица 7 – Таблица атрибутов для сущности «Продажа»

Поле

Ключи

Размер

Формат

Свойства

Код продажи

первичный ключ

11

bigint

Not null

Код клиента

внешний ключ

11

bigint

Not null

Код тура

внешний ключ

11

bigint

Not null

Стоимость

отсутствует

-

money

Not null

Дата продажи

отсутствует

-

date

Not null

Дата начала тура

отсутствует

-

date

Not null

Код проживания

внешний ключ

11

bigint

Not null

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

Представим окончательную логическую модель в виде схемы базы данных из MS SQL Server (рис. 1).

Рис. 1 - Схема базы данных

Заключение

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

Просмотров работы: 1593