Введение
В настоящее время ни одна отрасль деятельности не обходится без применения информационных технологий. Использование вычислительной техники в процессе ведения учёта и контроля операций на предприятии позволяет экономить временные и трудовые ресурсы. Туризм также не остался в стороне от процессов цифровизации. В условиях высокой конкуренции успешно работает только та организация, которая применяет информационные технологии, повышающие качество обслуживания клиентов [1].
Цель данной работы — разработка базы данных для туристического агентства с применением СУБД MySQL и инструмента MySQL Workbench. Для достижения цели решены задачи: анализ предметной области, разработка концептуальной модели данных, реализация реляционной модели средствами MySQL, создание визуального интерфейса на Java.
Анализ предметной области
Туристическое агентство предоставляет туры по заграничным направлениям. При оформлении заявки клиенты вносят свои данные: ФИО, номер паспорта, контакты для связи. Поскольку агентство предоставляет заграничные туры, клиентам необходимо также внести данные о визе. Клиенты вносятся сотрудниками компании в клиентскую базу с предоставлением персонального идентификатора. В результате клиентом приобретается тур с включёнными пунктом назначения, билетами, датами поездки и пакетом дополнительных услуг.
База данных, в которой отражена информация о клиентах, предприятии и взаимодействии между ними, является важнейшей частью для отлаженной работы предприятия. Она предназначена для автоматизации основных информационных процессов и обеспечивает входной контроль данных, подстановку значений по умолчанию и другие полезные функции.
Современные туристические агентства используют специализированные информационные системы: Amadeus, Sabre, TourCMS. Однако эти системы требуют значительных финансовых затрат и сложны в настройке, что делает их менее доступными для небольших агентств.
В отличие от коммерческих аналогов, разработанная база данных на основе MySQL предоставляет гибкое и экономичное решение, адаптированное под конкретные нужды. Она включает все необходимые сущности и обеспечивает удобный интерфейс для управления данными. Важным преимуществом является возможность кастомизации и расширения функционала.
Проектирование концептуальной модели данных
Для построения концептуальной модели данных были выделены 13 сущностей: «Транспорт», «Платежи», «Транспорт клиента», «Заказы туров», «Клиенты», «Категории виз», «Услуги заказа», «Сотрудники», «Туры», «Типы туров», «Визы», «Города», «Страны» [2]. Связи между сущностями организованы следующим образом: клиенты связаны с визами и заказами (один ко многим); заказы связаны с турами (многие ко многим); заказы связаны с услугами (многие ко многим); туры связаны со странами и городами; транспорт связан с заказами; сотрудники связаны с услугами заказов. Разработанная концептуальная модель представлена на рисунке 1.
Нормализация базы данных
Нормализация позволяет устранить дублирование, обеспечивает непротиворечивость хранимых данных и уменьшает трудозатраты на ввод и изменение данных. В ходе работы выполнена проверка модели на соответствие трём нормальным формам. Все атрибуты являются простыми (1НФ), неключевые атрибуты полностью зависят от первичных ключей (2НФ), транзитивные зависимости отсутствуют (3НФ). Таким образом, разработанная реляционная модель находится в третьей нормальной форме.
Реализация базы данных в MySQL Workbench
Разработка базы данных началась с создания новой базы данных средствами MySQL Workbench, после чего созданы все необходимые таблицы [3]. Для каждой таблицы определены первичные и внешние ключи, установлены связи, заданы типы данных. Таблицы заполнены тестовыми данными для проверки работоспособности.
Рис. 1. Концептуальная модель данных туристического агентства
В таблице 1 представлен перечень основных сущностей разработанной базы данных [4].
Таблица 1
Основные сущности базы данных туристического агентства
|
Наименование сущности |
Описание |
Ключевые атрибуты |
|
Transport |
Информация о транспорте |
transport_id, transport_type, model |
|
Payments |
Данные о платежах |
payment_id, order_id, amount, payment_date |
|
Clients |
Персональные данные клиентов |
client_id, first_name, last_name, passport_number |
|
Tours |
Данные о турах |
tour_id, tour_name, duration_days, price |
|
Visas |
Информация о визах |
visa_id, client_id, country_id, expiry_date |
|
Employees |
Информация о сотрудниках |
employee_id, first_name, last_name, position |
|
Countries |
Данные о странах |
country_id, country_name, visa_required |
|
Cities |
Данные о городах |
city_id, country_id, city_name |
Разработка визуального интерфейса на Java
Для визуального представления базы данных разработано приложение на Java в среде IntelliJ IDEA. Приложение подключается к базе данных и предоставляет функционал: просмотр таблиц, редактирование, добавление, удаление записей, сохранение отчётов в txt, выполнение SQL-запросов, фильтрацию и поиск данных. Добавлены триггеры и ограничения — например, нельзя ввести дату начала срока действия позже даты окончания визы [5].
Для редактирования записи выбирается нужная строка и нажимается кнопка «Редактировать», после чего открывается окно с полями для изменения. Добавление записи выполняется через кнопку «Добавить», уникальные ID генерируются автоматически. Удаление происходит после подтверждения операции.
Программа имеет систему фильтрации по возрастанию/убыванию при нажатии на заголовок столбца. Поиск по ключу позволяет найти запись по ID. Поиск значения выполняется по указанному столбцу. Фильтр по диапазону находит значения в заданном интервале. Поле «Фильтр» реализует поиск по всей таблице.
Выполнение SQL-запросов осуществляется через диалоговое окно, позволяющее выполнять сложные выборки, обновления и удаления. Сохранение отчётов в текстовом формате позволяет формировать документацию и передавать данные для дальнейшего анализа.
Заключение
В ходе исследования проведён анализ предметной области туристического агентства, позволивший выделить основные сущности и связи. В данном исследовании доказано, что применение разработанной информационной системы позволяет автоматизировать работу туристического агентства, снизить трудозатраты на ведение учёта, повысить скорость обработки заказов и исключить ошибки, связанные с человеческим фактором. Решение является гибким, экономически эффективным и может быть адаптировано под конкретные бизнес-процессы. Направления дальнейшего развития: добавление веб-интерфейса, интеграция с системами бронирования, аналитические отчёты и визуализация данных.
Литература:
- Виды туризма [Электронный ресурс]: сайт. — Обновляется в течение суток. — URL: https://infotour.ru/news/vidy-tyrizma (дата обращения: 10.08.2026).
- Концептуальная модель данных [Электронный ресурс]: сайт. — Обновляется в течение суток. — URL: https://www.site-do.ru/db/db4.php (дата обращения: 10.08.2026).
- Справочник по MySQL [Электронный ресурс]: сайт. — Обновляется в течение суток. — URL: https://dev.mysql.com/doc/ (дата обращения: 10.08.2026).
- Нормальная форма [Электронный ресурс]: сайт. — Обновляется в течение суток. — URL: https://learn.microsoft.com/ru-ru/office/troubleshoot/access/database-normalization-description (дата обращения: 10.08.2026).
- Кондрашов Ю. Н. Язык SQL: Сборник ситуационных задач по дисциплине «Базы данных»: учебное пособие / Ю. Н. Кондрашов. — М.: Русайнс, 2018. — 256 с.

