Разработка базы данных прокат видеодисков

Министерство образования и науки Республики Казахстан

Казахский университет технологий и бизнеса

Факультет технология и экономика

Кафедра Информационные системы

 

 

 

 

 

 

 

 

КУРСОВАЯ РАБОТА

 

ПО ПРЕДМЕТУ:

 Проектирование  Реляционной  Базы Данных

 

НА ТЕМУ:

«Разработка базы данных прокат видеодисков» 

 

 

 

 

                                                                              Проверил: Серимбетов М.А 

                                                                              Выполнила: Досмуратова А.Е

 

 

 

 

 

 

 

АСТАНА

2014г.

 

Содержание

 

 

I.   Введение ........................................................................................................5

II.  1.Создание базы данных ..............................................................................6

     1.1 Этапы проектирования базы данных ..................................................6

           1.Определение цели создания базы  данных.............................................6

           2.Определение таблиц, которые должна  содержать база данных.......6

           3.Присвоение ключевых полей .................................................................7

           4.Редактирование структуры базы  данных.............................................7

           5.Добавление данных и создание других объектов базы данных........7

        1.2 Инфологическая модель.......................................................................8

   2. Даталогическая модель.............................................................................10

     2.1 Структура моей базы данных. Таблицы ...........................................10

        2.2 Нормализация .....................................................................................13

     2.3 Схема данных ......................................................................................14

   3. Создание пользовательского интерфейса ..............................................16

     3.1 Запросы ................................................................................................16

       3.2  Формы ..................................................................................................25

       3.3 Отчеты ..................................................................................................

  III.  Заключение.................................................................................................25

 

 

 

 

 

 

 

 

 

 

 

 

Введение

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

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

  • Формирование и поддержание БД
  • Обработка информации
  • Прием запросов
  • Предоставление информации пользователям
  • Обеспечение целостности и реорганизации ценностей БД
  • Организация совместной работы пользователей

 

На сегодняшний день существует множество различных систем управления базами данных. Они все используют разные средства и функции, но преимущественно у всех СУБД в основе лежат одинаковые понятия. Поэтому для обобщения этих понятий, приемов и методов на весь класс СУБД, я хотела бы  взять программу, входящую в Microsoft Office, Microsoft Access.

Microsoft Access –реляционная СУБД, в которой предусмотрены все необходимые  средства для определения и обработки данных, а также управления ими при работе с большим объемом информации.

Access - функционально полная система, имеющая мощные средства для работы в этой программе. Ее преимуществом перед другими является простота,  наличие всех средств для успешной обработки и управления  БД.

 

 

    1. Создание базы данных

 

    1. . Этапы проектирования базы данных

1. Определение цели создания  базы данных

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

Моя база данных разработана для проката видеодисков. Схема работы очень проста. Клиент ( все данные и контакты находятся в таблице Клиенты ) берет на прокат видеодиск (например, «фильм Чемпионы».). Этот прокат заносится в таблицу Прокат. Остальные таблицы ( Жанр, Клиенты, Режиссеры, Страны), формы, запросы базы  будут нужны для информационной, правильной, четкой, работы. Чтобы можно было сразу узнать кто режиссер, производитель, т.е. страна, жанр фильма. Также можно узнать продолжительность фильма и год выпуска. Таблица Прокат показывает такую важную информацию, как отметка о возврате и цена проката видеодиска.   

 

     2. Определение таблиц, которые должна содержать база данных

Один из наиболее сложных этапов в процессе создания базы данных -  разработка таблиц, так как результаты, которые должна выдавать база данных не всегда дают полное представление о структуре таблицы.

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

    3. Присвоение ключевых полей

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

 

   4. Редактирование структуры базы данных

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

 

5.  Добавление данных и создание других объектов базы данных

Если структуры таблиц отвечают поставленным требованиям, то можно вводить все данные (в режиме конструктора таблиц). После ввода создаются любые запросы, формы, отчеты, макросы и модули (удобнее, проще и правильнее создавать все с помощью мастеров).

 

 

 

 

 

    1. Инфологическая модель

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

 

Определяют три основные класса сущностей:

  • стержневые
  • ассоциативные
  • характеристические.

Стержневая сущность – независимая сущность, которая имеет независимое существование, хотя может обозначать другие сущности.

Характеристическая сущность (характеристика) – это связь вида "многие-к-одному" или "одна-к-одной" между двумя сущностями (частный случай ассоциации). Цель характеристики состоит в описании или уточнении некоторой другой сущности предметной области.

Ассоциативная сущность (ассоциация) – это связь вида "многие-ко-многим" между двумя или более сущностями или экземплярами сущности.

Это теория. Для наглядности покажу на примере торговой организации:

 

 

 

 

 

Стержневая сущность

 «Видеодиски», «Клиент», «Прокат»

    Видеодиски ( Название_фильма, режиссер,жанр_фильма,страна_производитель,год_выпуска, продолжительпость )

 

Клиенты  (Данные_Удостоверения_Личности, ФИО, Телефон)

 

Прокат (Код_УДЛ, Код_Клиента,Код_диска, Дата_выдачи, Количество_дней, Стоимость,Отметка_о_возврате)

 

Характеристическая сущность

«Режиссеры», «Жанры», «Страны»

 

Режиссеры (Код_Режиссера,ФИО_Режиссера)

Жанры (Код_жанра,жанр)

Страны (Код_страны, Страна)

    1. Даталогическая модель

    1. Структура моей базы данных

Таблицы

Моя База Данных содержит 6 таблиц:

-Видеодиски

- Режиссеры

- Жанры

- Страны

- Клиенты

- Прокат

Во всех таблицах в режиме конструктора указываются первичные ключи.

 

 

 

 

           Таблица Видеодиски: предназначена для хранения всех видеодисков с полным  их описанием. Например, кем произведены, когда и продолжительность фильма.

 

Код_диска – присваивается самостоятельно.

Название_фильма – вводится вручную в режиме конструктора название фильма.

Режиссер -  берется из таблицы Режиссеры

Страна_производитель – производитель фильма. Берется из таблицы Страны.

Жанр_фильма– поле, в котором содержится Код жанра фильма. Данные берутся из таблицы Жанры.

Год_выпуска – Год выпуска фильма. Значение вводится вручную.

Продолжительность – продолжительность фильма. Время вводится от руки.

 

Таблица Клиенты: дает описание всех клиентов данной организации.

Данные_Удостоверения_личности – данные удостоверения личности клиента

ФИО и Телефон– более подробная информация. Все поля таблицы заполняются пользователем.

 

Таблица Режиссеры состоит из двух полей:

 

Код_Режиссера – Код режиссера

ФИО_режиссера – поле предоставляет Фамилию Имя о режиссере.

 

Таблица Жанры: состоит из двух полей:

В таблице указывается Код жанра и сам жанр.

 

Таблица Страны: состоит из двух полей :

 

Таблица содержит Код страны и Страну.

 

Таблица Прокат: содержит полную информацию о прокате видеодиска:

Код_УДЛ -  код удостоверения личности клиента.

Код_клиента – код клиента берущего на прокат видеодиск. Берется из таблицы Клиенты.

Код диска– бередстя из таблицы Видеодиски.

Дата_выдачи -  дата выдачи диска, вводится вручную.

Количество_дней – срок на который берется видеодиск  на прокат. Вводится самостоятельно.

Стоимость – цена определяется пользователем.

Отметка_о_возврате – при получении диска обратно, информация отмечается   в данном поле.

 

2.2 Нормализация

Нормализация — процесс уменьшения избыточности информации в таблицах реляционной БД и, как следствие, построения оптимальной структуры таблиц и связей.

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

 

  1. Каждое поле любой таблицы должно быть уникальным.
  2. Каждая таблица должна иметь уникальный первичный ключ, который может состоять из одного или нескольких полей таблицы.
  3. Для каждого значения первичного ключа должно быть одно и только одно значение любого из столбцов данных, и это значение должно относиться к объекту таблицы.
  4. Должна иметься возможность изменять значения любого поля (не входящего в первичный ключ), и это не должно повлечь за собой изменение другого поля.

 

 

Созданная мною таблица удовлетворяет вышеизложенным требованиям:

1 НФ (Нормальная Форма), все значения являются атомарными.

 

2 НФ:

выполняются ограничения 1НФ, и каждый не ключевой атрибут функционально полно зависит от составного первичного ключа.

 

 

 

Название таблицы

Ключевое поле

Видеодиски

Жанры

Режиссеры

Клиенты

Страны

Прокат

Код_ диска.

Код_жанра

Код_режиссера

Код_клиента

Код_Страны

Код_УДЛ




 

 

 

 

 

 

 

 

3 НФ:

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

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

 

Моя база данных:

Таблица Видеодиски

 

 

 Таблица Клиенты

 

 

Таблица Жанры

 

 

 

Таблица Прокат

 

 

Таблица Режиссеры

 

 

Таблица Страны

 

 

  1. Моя база данных находится в 1НФ так как это обычное отношение. Потому что  отношении нет одинаковых кортежей, все значения атрибутов атомарны.
  2. Мое отношение находится во второй нормальной форме (2НФ) потому что оно находится в 1НФ и нет неключевых атрибутов, зависящих от части сложного ключа. (Неключевой атрибут - это атрибут, не входящий в состав никакого потенциального ключа).
  3. Моя база данных находиться в третьей нормальной форме, она приведена ко второй нормальной форме и каждый не ключевой столбец независим друг от друг. И если изменив значение в одном столбце, не требуется изменение в другом столбце.

 

 

 

2.3 Схема данных

Отношения – это правила, поддерживаемые на уровне механизма реализации СУБД. Различают три типа отношений:

 

  • Отношение «один-к-одному»: для каждой строки в одной таблице существует не более одной строки связанной таблицы.
  • Отношение «один-ко-многим»: одна таблица не содержит вообще или имеет набор связанных «дочерних» записей из другой таблицы.
  • Отношение «многие-ко-многим»: для каждой строки первой таблицы может существовать набор строк в другой таблице и наоборот. Такая связь организуется, как правило, при помощи третьей, связующей таблицы, содержащей значения первичных ключей обеих таблиц в качестве внешних ключей.

При разработке БД необходимо принимать во внимание правила обеспечения целостности данных (обеспечивает каскадное обновление

записей в связанных таблицах)

 

В моей схеме данных таблицы связаны следующим образом. При добавлении нового видеодиска, пользователь выбирает код_ жанра (жанр фильма), который берется из таблицы Жанры.

Также продавец выбирает Страну_ производителя (из таблицы Страны). Далее он от руки вводит Год выпуска фильма, его продолжительность.

Ниже представлена моя схема данных:

 

 

3. Создание пользовательского интерфейса

3.1 Запросы

В моей БД содержатся 5 запросов:

 Ниже я опишу каждый из запросов.

 

 

Запрос «Клиент и стоимость видеодиска»

Данный запрос при выполнении дает информацию о Клиенте и цене, которую он должен внести за прокат видеодиска.

 

Данные для этого запроса берутся из таблицы Клиенты и Прокат.

В режиме SQL запрос выглядит так:

SELECT Прокат.Код_клиента, Клиенты.ФИО, Прокат.Стоимость

FROM Клиенты, Прокат

WHERE Прокат.Код_клиента=Данные_удостоверения_личности;

 

 

Запрос «Название_фильма и режиссер»

Данный запрос выводит на экран  Название фильма и режиссера фильма

При выполнении запрос выглядит так:

 

Данные для создания запроса берутся из таблиц Видеодиски и Режиссеры.

В режиме SQL запрос выглядит так:

SELECT Видеодиски.Название_фильма, Режиссеры.ФИО_Режиссера

FROM Видеодиски, Режиссеры

WHERE Видеодиски.Режиссер=Режиссеры.Код_Режиссера;

 

Запрос «Название_фильма и жанр»

Данный запрос показывает название фильма и его жанр. Информация берется из  таблиц Видеодиски и Жанры.

В режиме SQL запрос выглядит так:

SELECT Видеодиски.Название_фильма, Жанры.Жанр

FROM Видеодиски, Жанры

WHERE Видеодиски.Жанр_Фильма=Жанры.Код_Жанра;

 

Запрос «ФИО и дата выдачи»

Данный запрос при выполнении выводит всех клиентов и дату выдачи диска на прокат. Данные берутся из таблиц  Клиенты и Прокат.

 

В режиме SQL запрос выглядит так:

SELECT Клиенты.ФИО, Прокат.Дата_выдачи

FROM Клиенты, Прокат

WHERE Прокат.Код_клиента=Данные_удостоверения_личности;

 

Запрос «Видеодиски, страна Россия, 2013 год»

При выполнении этого запроса на экран выводится  Название фильма производителем которого была страна Россия, а год выпуска 2013.

 

 

В режиме SQL запрос выглядит так:

SELECT Видеодиски.Название_фильма, Страны.Страна, Видеодиски.Год_выпуска

FROM Видеодиски, Страны

WHERE Видеодиски.Страна_производитель=Страны.Код_страны and Страна='Россия' and Видеодиски.Год_выпуска=2013;

 

 

 

 

 

 

 

 

 

    1. Формы

Формы создавать достаточно просто. Для этого в режиме «мастер форм» выбираются значения из таблиц и формируются по усмотрению  разработчика базы.

Моя База Данных содержит 6 форм:

 

Форма «Видеодиски».

Простая форма, выводящая все видеодиски и информацию о них.

 

 

 

 

 

 

Форма «Жанры»

Это простая форма, которая выводит все жанры:

  • позволяет вносить изменения о жанрах
  • позволяет добавлять новые жанры

 

Форма «Режиссеры»

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

 

 

Форма «Клиенты»

Эта форма позволяет добавлять клиентов в таблицу Клиенты. Форма имеет простое и удобное оформление и предназначена для пользователя. Данная форма позволяет добавлять новых клиентов и изменять существующую информацию.

 

 

Форма «Страны»

Форма предназначена для просмотра и исправления стран-производителей фильмов.

 

 

Форма «Прокат»

В данной форме при запуске появляется вся информация о прокате видеодиска- код диска,  информация о клиенте, дата выдачи, количество дней, стоимость и отметка о возврате.

 

 

3.3 Отчеты

 

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

 

 

 

Отчет по выдачи диска.

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

 

 

Отчет по названию фильма и жанру.

Этот отчет выдает название фильма и его жанр.

 

 

 

 

 

 

 

Отчет названию фильма и режиссеру.

 

Этот отчет нужен с целью ознакомления со всеми режиссерами фильмов. Данные вносятся самостоятельно пользователем.

 

 

Отчет  стоимости  фильма:

 

Этот отчет выдает цену, которую должен клиент за прокат диска.

 

 

 

 

 

Заключение

 

Я разработала базу данных по прокату видеодисков .

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

На примере моей базы данных для проката видеодисков, я предоставила  к рассмотрению и анализу некоторые функции и возможности Microsoft Accsess. Эта программа достаточно проста и удобна в обращении. Построение таблиц, отчетов, запросов, форм упрощается при использовании мастеров (форм, таблиц и т.п.).

 

Я считаю, что база данных в среде СУБД MS Access  практическом применении удобна и достаточно эффективна. Все зависит от пользователя, объема располагаемых им знаний и умения ими воспользоваться. Говоря о себе могу сказать, что эта программа имеет много полезных функций и в дальнейшем мне очень пригодится.

 

 

 

 

 

 

 

 

 

 

 


 



Разработка базы данных прокат видеодисков