Общие сведения программисту
ПОСТАНОВКА ЗАДАЧИ
Задание
Спроектировать базу данных, построить программу, обеспечивающую взаимодействие с ней в режиме диалога для посетителей кинотеатра.
В БД должны храниться сведения о кинотеатрах: название, адрес кинотеатра, телефон; о фильмах: название, производство, режиссер, жанр; кроме того, должна храниться информация о цене билета, количестве свободных мест на данный сеанс. На разных сеансах в одном кинотеатре могут идти разные фильмы.
Цена билета определяется названием фильма, категорией кинотеатра и сеансом.
Посетителям могут потребоваться следующие сведения о текущем состоянии проката фильмов в городе:
ü репертуар кинотеатра
ü адрес
ü число мест (свободных) на данный сеанс
ü цена билетов на данный сеанс
ü жанр, производство и режиссер данного фильма
ü вместимость данного кинотеатра
Необходимо предусмотреть возможность выдачи справки о сеансах фильма в указанном кинотеатре и отчета о прокате фильмов в районах города (названия фильмов, в каких кинотеатрах они демонстрировались, цена билета в каждом кинотеатре на них).
Проанализировав задание, внесем некоторые коррективы:
ü Категория у кинотеатра отсутствует. Вместо неё определяется состояние залов — Работает (Да/Нет).
ü Цена билета определяется прокатной стоимостью (годом выпуска) фильма и временем сеанса.
Проектирование БД
После проведения анализа предметной области, выделим следующие сущности [1], [2], [3]: КИНОТЕАТРЫ, ФИЛЬМЫ, ЗАЛЫ, СЕАНСЫ.
Рассмотрим сущности КИНОТЕАТРЫ и ЗАЛЫ, имеющие следующие атрибуты:
КИНОТЕАТРЫ (Название кинотеатра, Адрес, Телефон);
ЗАЛЫ (Код зала, Наименование зала, Вместимость, Работает, Кинотеатр);
|
|
|
(см. рис 1.1).
Рисунок 1.1
Рассмотрим сущности КИНОТЕАТРЫ и ЗАЛЫ, имеющие следующие атрибуты:
ФИЛЬМЫ (Название фильма, Жанр, Режиссер, Производство, Год выпуска);
ЗАЛЫ (Код зала, Наименование зала, Вместимость, Работает);
|
|
(см. рис 1.1).
Рисунок 1.2
Рассмотрим сущности СЕАНСЫ и ЗАЛЫ, имеющие следующие атрибуты:
ЗАЛЫ (Код зала, Наименование зала, Вместимость, Работает);
СЕАНСЫ (Зал, Дата, Время, Свободные места, Кинотеатр, Фильм);
|
|
Рисунок 1.3
Рассмотрим сущности СЕАНСЫ и ФИЛЬМЫ, имеющие следующие атрибуты:
ФИЛЬМЫ (Название фильма, Жанр, Режиссер, Производство, Год выпуска);
СЕАНСЫ (Зал, Дата, Время, Свободные места, Кинотеатр, Фильм);
|
|
Также имеем таблицу ЖАНРЫ, имеющую следующие атрибуты:
ЖАНРЫ(Жанр, Описание);
Таблица жанры не связывается т.к. несёт только информационный характер для посетителей и будет включена в главную форму.
Рисунок 1.4
В итоге получаем следующие сущности:
КИНОТЕАТРЫ (Название кинотеатра, Адрес, Телефон);
ФИЛЬМЫ (Название фильма, Жанр, Режиссер, Производство, Год выпуска);
ЗАЛЫ (Код зала, Наименование зала, Вместимость, Работает, Кинотеатр);
СЕАНСЫ (Зал, Дата, Время, Свободные места, Кинотеатр, Фильм);
ЖАНРЫ(Жанр, Описание).
ОБЩИЕ СВЕДЕНИЯ ПРОГРАММИСТУ