ічної моделі предметної області.
інфологічної моделі можна представити у вигляді діаграми, використовуючи засоби моделювання сутність-зв'язок .
2.1. Сутності і їхні атрибути, зв'язки
Сутності, що характеризують предметну область:
Користувачі - містить інформацію про користувачів, що викачують фільми.
Скачування - містить дані скачуванні користувачами фільмів.
Фільми - містить інформацію про фільми, що містяться в базі даних.
Фільм-актор - містить інформацію про акторів, які знімалися у фільмах.
Визначимо атрибути кожної сутності. Ключові атрибути позначимо наступним виділенням lt; gt;
Користувачі: lt; Код_пользователя gt ;; ПІБ; Дата народження; Місто; Країна; Дата реєстрації; E-mail.
Скачування: lt; Код_скачіванія gt ;; Код_фільма; Код_пользователя; Дата_скачіванія.
Фільми: lt; Код_фільма gt ;; Назва; Жанр; Режисер; Рік випуску; Дата додавання; Якість; Обсяг; Страна_проізводства; Вартість; Картинка.
Фільм-актор: lt; Код_фільм-актор gt ;; Фільм; Актор.
Зв'язки між сутностей:
Об'єкт Користувачі пов'язаний з об'єктом Скачування ставленням 1: N, тому одна людина може завантажувати кілька фільмів.
Об'єкт Фільми пов'язаний з об'єктом Скачування ставленням 1: N, тому один фільм можна скачувати багато разів.
Об'єкт Фільми пов'язаний з об'єктом Фільм-актор ставленням 1: N, тому в одному фільмі може зніматися багато акторів.
На підставі проведеного аналізу отримаємо інформаційну структуру взаємозв'язків об'єктів, представлену в наступному вигляді
Рис. 1. Інформаційна структура взаємозв'язків об'єктів предметної області «Фільмотека»
2.2. Нормалізація даних
Основним етапом логічного проектування концептуальної моделі в реляційну є нормалізація отриманих на етапі інфологіческого проектування відносин.
Процес нормалізації відносин складається з наступних етапів:
перетворення відносин в першу нормальну форму.
перетворення відносин в другу нормальну форму.
перетворення відносин в третю нормальну форму.
На основі аналізу кожної сутності, виявленої на етапі концептуального проектування виробляємо формування нормалізованих відносин по кожній з сутностей з виділенням, в разі необхідності, відносин зв'язку або об'єктних відносин.
Сутності представлені наступними наборами реквізитів:
Користувачі: lt; Код_пользователя gt ;; ПІБ; Дата народження; Місто; Країна; Дата реєстрації; E-mail.
Скачування: lt; Код_скачіванія gt ;; Код_фільма; Код_пользователя; Дата_скачіванія.
Фільми: lt; Код_фільма gt ;; Назва; Жанр; Режисер; Рік випуску; Дата додавання; Якість; Обсяг; Страна_проізводства; Вартість; Картинка.
Фільм-актор: lt; Код_фільм-актор gt ;; Фільм; Актор.
Сутність Користувачі можна розглядати як відношення в 1НФ. Для приведення її до 2НФ і 3НФ необхідно перетворити це відношення, виключивши неповні функціональні залежності не ключових реквізитів від ключа. Результатом нормалізації відносини Користувачі буде наступний перелік відносин:
- Користувачі: lt; Код_пользователя gt ;, ПІБ, Дата_рожденія, Код_города; Дата_регістраціі, е-mail.
- Міста: lt; Код_города gt ;, Місто, Країна.
Нормалізуємо вийшла сутність Міста:
- Міста: lt; Код_города gt ;, Місто, код_країни.
- Країни: lt; код_країни gt ;, Назва.
Сутність Міста буде пов'язана з сутністю Користувачі ставленням 1: N, тому з одного міста може бути багато користувачів. Сутність Країни буде пов'язана з сутністю Міста ставленням 1: N, тому в одній країні може бути багато міст.
Сутність Фільми можна розглядати як відношення в 1НФ. Для приведення його до 2НФ і 3НФ необхідно перетворити це відношення, виключивши неповні функціональні залежності не ключових реквізитів від ключа. Результатом нормалізації відносини Фільми буде наступний перелік відносин:
- Фільми: lt; Код_фільма gt ;, Назва, Код_жанра, Код_режіссера, Год_випуска, Дата_добавленія, Якість Об'єм, код_країни, Вартість, Картинка.
- Жанри: lt; Код_жанра gt ;, Жанр.