Проектирование базы данных
Связи «Кинотеатр» — «Фильм» и «Зал» — «Фильм» требуют каждое трех отношений — по два для сущностей и по одному для связи. Но в качестве отношения для связи в обоих случаях может выступать отношение «Сеанс», так как оно имеет атрибуты, являющиеся ключевыми в отношениях «Кинотеатр», «Фильм» и «Зал». Фильм (название, режиссер, оператор, жанр, производство, продолжительность, кадр из фильма… Читать ещё >
Проектирование базы данных (реферат, курсовая, диплом, контрольная)
Для проектирования базы данных выбран универсальный метод проектирования — ER-метод (метод «сущность-связь»). При использовании этого метода необходимо прежде всего создать ERмодель, отражающую связи сущностей заданной предметной области. описание сущностей включает в себя перечисление атрибутов сущностей — их свойств, необходимых для решения задачи, один или несколько атрибутов могут быть ключевыми, то есть однозначно определяющими экземпляр сущности (они подчеркнуты).
При определении ключевых атрибутов приняты следующие допущения:
- 1) в городе нет кинотеатров с одинаковым названием;
- 2) в прокате нет фильмов с одинаковым названием;
- 3) в прокате нет фильмов с одинаковыми наградами;
Учитывая это, построим ER-диаграмму по нотации Баркера:
Составив ER-модель, можем перейти к созданию реляционной модели, то есть генерации отношений с помощью собственно ER-метода.
Связь «Кинотеатр» — «Зал» требует два отношения — «Кинотеатр», «Зал» и ключевой атрибут сущности «Кинотеатр» становится частью составного ключа отношения «Зал» .
Связь «Зал» — «Сеанс» также требует два отношения — «Зал», «Сеанс», при этом составной ключ отношения «Зал» (включает ключ сущностей «Зал» и «Кинотеатр») становится частью составного ключа отношения «Сеанс» .
Тогда связь «Кинотеатр» — «Сеанс», требующая двух отношений и перехода ключа, уже будет учтена, так как ключ сущности «Кинотеатр» входит в состав ключа отношения «Зал» .
Связь «Фильм» — «Сеанс» требует два отношения — «Фильм» и «Сеанс»; ключ сущности «Фильм» становится атрибутом отношения «Сеанс» .
Связи «Кинотеатр» — «Фильм» и «Зал» — «Фильм» требуют каждое трех отношений — по два для сущностей и по одному для связи. Но в качестве отношения для связи в обоих случаях может выступать отношение «Сеанс», так как оно имеет атрибуты, являющиеся ключевыми в отношениях «Кинотеатр», «Фильм» и «Зал» .
Связь «Фильм» — «Актер» требует три отношения — «Фильм», «Актер» и одно для связи — «Роли», его атрибутами будут ключи отношений «Фильм» и «Актер» .
Связь «Фильм» — «Призы» требует два отношения — «Фильм» и «Призы»; ключевой атрибут сущности «Фильм» становится частью составного ключа отношения «Призы» .
Таким образом, получим отношения со следующими атрибутами и функциональными зависимостями:
1) Кинотеатр (название, район, адрес, категория) название район, адрес, категория адрес название, категория, район.
2) Зал (Кинотеатр, № зала, вместимость) кинотеатр, № зала вместимость.
3) Фильм (название, режиссер, оператор, жанр, производство, продолжительность, кадр из фильма, прокатная стоимость) название режиссер, оператор, жанр, производство, продолжительность, кадр из фильма, прокатная стоимость;
- 4) Актеры (ФИО)
- 5) Роли (Актер, Фильм)
- 6) Призы (Название, Фильм)
- 7) Сеанс (кинотеатр, зал, фильм, дата, время, цена билета, количество свободных мест)
кинотеатр, зал, дата, время фильм, количество свободных мест, цена билета;
Все перечисленные отношения находятся в нормальной форме Бойса-Кодда, так как все детерминанты функциональных зависимостей являются потенциальными ключами соответствующих отношений.