Разработка базы данных для кинотеатров

Автор работы: Пользователь скрыл имя, 27 Декабря 2010 в 17:04, курсовая работа

Краткое описание

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

Содержание

1 Постановка задачи 4
2 Анализ предметной области 5
3 Проектирование базы данных 9
4 Реализация базы данных в формате MS SQL Server 2000 10
5 Хранимые процедуры для вставки данных 21
6 Представления на выборку данных из базы данных 39
7 Проектирование программного обеспечения 42
8 Руководство пользователя 45
Список литературы 47
Приложение 48

Вложенные файлы: 1 файл

Шаблон пояснительной записки.doc

— 831.00 Кб (Скачать файл)
  1. Среди перечисленных атрибутов нет составных – тех атрибутов, которые можно разбить на несколько частей. Следовательно, данное отношение находится в 1 нормальной форме.
  2. Отношение Сеансы находится во 2 нормальной форме, так как все не ключевые атрибуты данного отношения полностью зависят от первичного ключа.
  3. Между не ключевыми атрибутами отношения не существует функциональных зависимостей. Так как отношение находится во 2 НФ и не имеет функциональных зависимостей, следовательно, оно находится в 3 нормальной форме.
 

Таблица 10 - Схема отношения "Расписание"

Атрибут Смысл Тип
Номер личного дела (PFK) Соответствует работнику, работающему в данной сфере Числовое целое
Кинотеатр (PFK) Название кинотеатра, в котором работник будет работать Строка
Рабочие дни (PK) Число, месяц, год  работы Дата
Время начала Во сколько  начинает работу работник Время
Составитель расписания (FK) Человек, занимающийся составлением расписания Строка
Время окончания Во сколько  заканчивает работу работник Время
 
      
  1. Среди перечисленных  атрибутов нет составных –  тех атрибутов, которые можно разбить на несколько частей. Следовательно, данное отношение находится в 1 нормальной форме.
  2. Отношение Расписание находится во 2 нормальной форме, так как все не ключевые атрибуты данного отношения полностью зависят от первичного ключа.
  3. Между не ключевыми атрибутами отношения не существует функциональных зависимостей. Так как отношение находится во 2 НФ и не имеет функциональных зависимостей, следовательно, оно находится в 3 нормальной форме.
 

Таблица 11 - Схема отношения "Работник_Должность"

Атрибут Смысл Тип
Идентификатор должности (PFK) Кодовое обозначение  должности Числовой целый
Номер личного дела (РFК) Номер, по которому однозначно идентифицируется тот или  иной работник Числовой целый
 
      
  1. Среди перечисленных  атрибутов нет составных – тех атрибутов, которые можно разбить на несколько частей. Следовательно, данное отношение находится в 1 нормальной форме.
  2. Отношение Работник_Должность находится во 2 нормальной форме, так как все не ключевые атрибуты данного отношения полностью зависят от первичного ключа.
  3. Между не ключевыми атрибутами отношения не существует функциональных зависимостей. Так как отношение находится во 2 НФ и не имеет функциональных зависимостей, следовательно, оно находится в 3 нормальной форме.
 

Таблица 12 - Схема отношения "Сеанс_Кинотеатр"

Атрибут Смысл Тип
Идентификатор сеанса(FPK) Определяет  номер сеанса, является уникальным полем Числовой целый
Название  кинотеатра(PFK) Название того или иного кинотеатра Строка
 
      
  1. Среди перечисленных  атрибутов нет составных –  тех атрибутов, которые можно разбить на несколько частей. Следовательно, данное отношение находится в 1 нормальной форме.
  2. Отношение Сеанс_Кинотеатр находится во 2 нормальной форме, так как все не ключевые атрибуты данного отношения полностью зависят от первичного ключа.
  3. Между не ключевыми атрибутами отношения не существует функциональных зависимостей. Так как отношение находится во 2 НФ и не имеет функциональных зависимостей, следовательно, оно находится в 3 нормальной форме.
 

Таблица 13 - Схема отношения "Актеры_Фильм"

Атрибут Смысл Тип
Идентификатор фильма (PFK) Число, идентифицирующее тот или иной фильм Числовой целый
Идентификатор актера (PFK) Задает уникальность характеристикам Числовое целое
 
      
  1. Среди перечисленных  атрибутов нет составных –  тех атрибутов, которые можно разбить на несколько частей. Следовательно, данное отношение находится в 1 нормальной форме.
  2. Отношение Фильм Актеры_Фильм находится во 2 нормальной форме, так как все не ключевые атрибуты данного отношения полностью зависят от первичного ключа.
  3. Между не ключевыми атрибутами отношения не существует функциональных зависимостей. Так как отношение находится во 2 НФ и не имеет функциональных зависимостей, следовательно, оно находится в 3 нормальной форме.
 

Описание  схем отношения

  1. Связь «Актеры – Актеры_Фильм - Фильм»
 

      Смысл связи заключается в том, что  бы показать какие актеры принимали участие в съемках фильма

Рисунок 7 - Графическое отображение  связи «Актеры - Актеры_Фильм – Фильм»

      Данная  связь имеет отношение многие ко многим, так как несколько актеров могут сниматься в нескольких фильмах. Чтобы избавиться от связи «Многие ко многим», была введена ассоциативная сущность. Ее наличие обеспечивает связь «Один ко многим». Главными сущностями являются «Актеры» и «Фильм». 

      
  1. Связь «Фильм - Билет»
 

      Смысл связи заключается в том, что бы показать, по какому билету можно попасть на тот или иной фильм.

     

Рисунок 8 - Графическое отображение связи «Фильм – Билет»

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

     
  1. Связь «Билет - Кинотеатр»
 

     Смысл связи заключается в том, что  бы показать какому кинотеатру соответствует тот или иной билет.

     

Рисунок 9 - Графическое отображение  связи «Кинотеатр – Билет»

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

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

     
  1. Связь «Билет - Сеансы»
 

     Смысл связи заключается в том, то бы показать на какой сеанс можно попасть по билету.

Рисунок 10 - Графическое отображение связи «Билет - Сеансы»

     Данная  связь имеет отношение один ко многим. Это обусловлено тем, что, предъявив несколько билетов можно попасть на один сеанс. Но не получиться присутствовать на нескольких сеансах. Главной сущностью отношения является билет, а подчиненной «Сеансы». 

     
  1. Связь «Кинотеатр – Сеанс_Кинотеатр - Сеансы»
 

     Смысл связи заключается в том, что бы показать в каком кинотеатре проводятся сеансы и какие сеансы проводятся в том или ином кинотеатре.

Рисунок 11 - Графическое отображение связи «Кинотеатр – Сеанс_Кинотеатр – Сеансы» 

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

     
  1. Связь «Работник - Расписание - Кинотеатр»
 

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

     

Рисунок 12 - Графическое отображение связи «Работник - Расписание - Кинотеатр»

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

     
  1. Связь «Работник – Работник_Должник - Должность»
 

     Смысл данной связи заключается в том, что бы отобразить должность, занимаемую работником.

     

Рисунок 13 - Графическое отображение связи «Работник - Работник_Должность - Должность»

     Данная  связь имеет отношение многие ко многим, так как один работник может занимать несколько должностей, соответственно одна должность может быть занята несколькими работниками. Так как связь многие ко многим недопустима, была введена дополнительная сущность, при помощи которой отношение было разбито на две связи типа один ко многим. 

 

      4 Реализация базы данных в формате MS SQL Server 2000 

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

     Таблица 14 – Спецификация таблицы «Работник» 

Имя поля Тип Хранение NULL По умолчанию Ограничения
Фамилия Nvarchar(25) Запрещено Пустая строка  
Имя Nvarchar(25) Запрещено Пустая строка  
Отчество Nvarchar (25) Запрещено Пустая строка  
Номер трудовой Int Запрещено Пустая строка  
Номер пенсионного удостоверения Nvarchar (20) Запрещено Пустая строка  
Дата  рождения datetime Запрещено Пустая строка  
Номер личного дела Int Запрещено Identity(1,1) Первичный ключ
Дата  найма Int Запрещено Текущая дата

Getdate( )

Дата не позднее  текущей
Номер паспорта Nvarchar (20) Запрещено Пустая строка  

Информация о работе Разработка базы данных для кинотеатров