- •Факультет бизнеса и менеджмента Школа бизнес-информатики
- •Создание web-интерфейса (сайта) для базы данных аудиобиблиотеки
- •Аннотация
- •Оглавление
- •Глава 1. Теоретические основы разработки web-интерфейса
- •Web-сервера, назначение, принципы организации
- •Теоретические основы php
- •Теоретические основы MySql
- •Глава 2. Предметная область, постановка задачи и требований
- •Технические требования
- •Функциональные требования
- •Глава 3. Практическая реализация
- •Создание и описание сущностей
- •Сущности и их атрибуты
- •Запросы и триггеры
Глава 3. Практическая реализация
Создание и описание сущностей
На основе приведённого выше описания сущностей мной была построена модель базы данных на CAERwinDM(Рис.1).

(Рисунок 1. Первичная модель БД в CAERwinDM)
Данная модель не может быть применена на физическом уровне проектирования, так как полностью не отражает предметной области и процесса заказа. Большинство аудиокниг разбиваются на несколько файлов, для упрощения их прослушивания и передачи пользователю. Эта особенность должна быть отражена и в модели базы данных. Поэтому была добавлена сущность «Аудиофайл», которая описывает конкретные файлы, из которых состоит аудиокнига. Данные изменения были отмечены и в модели (Рис. 2).

(Рисунок 2. Окончательная модель БД в CAERwinDM)
Сущности и их атрибуты
В данной БД были использованы различные сущности с определёнными атрибутами, помогающими в описании предметной области.
Ниже представлены таблицы, в которых подробно расписаны атрибуты и их свойства для каждой сущности.
|
Имя столбца |
Тип данных |
Описание поля |
Комментарий |
Разрешение значений NULL |
|
ID Book |
int |
Идентификатор книги |
Первичный ключ (PK) |
Нет |
|
Title Book |
varchar(50) |
Название книги |
|
Нет |
|
Genre |
varchar(50) |
Жанр |
|
Да |
|
Date Book |
date |
Дата написания книги |
|
Да |
“Book”
“Author”
|
Имя столбца |
Тип данных |
Описание поля |
Комментарий |
Разрешение значений NULL |
|
ID Author |
int |
Идентификатор автора |
Первичный ключ (PK) |
Нет |
|
Name Author |
varchar(50) |
ФИО автора |
|
Нет |
|
Country Author |
varchar(50) |
Страна автора |
|
Да |
“Press”
|
Имя столбца |
Тип данных |
Описание поля |
Комментарий |
Разрешение значений NULL |
|
ID Press |
int |
Идентификатор издательства |
Первичный ключ (PK) |
Нет |
|
Name Press |
varchar(50) |
Название издательства |
|
Нет |
|
Country Press |
varchar(50) |
Страна издательства |
|
Да |
“Audiobook”
|
Имя столбца |
Тип данных |
Описание поля |
Комментарий |
Разрешение значений NULL |
|
ID Audiobook |
int |
Идентификатор аудиокниги |
Первичный ключ (PK) |
Нет |
|
ID Book |
int |
Идентификатор книги |
Внешний ключ (FK) |
Нет |
|
ID Author |
int |
Идентификатор автора |
Внешний ключ (FK) |
Нет |
|
ID Press |
int |
Идентификатор издательства |
Внешний ключ (FK) |
Нет |
|
Parts |
int |
Количество частей |
|
Да |
|
Price |
int |
Цена книги |
|
Да |
“Client”
|
Имя столбца |
Тип данных |
Описание поля |
Комментарий |
Разрешение значений NULL |
|
ID Client |
int |
Идентификатор клиента |
Первичный ключ (PK) |
Нет |
|
Name Client |
varchar(50) |
ФИО клиента |
|
Нет |
|
Orders |
int |
Количество заказов |
|
Да |
|
Registration Time |
datetime |
Дата и время регистрации |
|
Нет |
“Order”
|
Имя столбца |
Тип данных |
Описание поля |
Комментарий |
Разрешение значений NULL |
|
ID Order |
int |
Идентификатор заказа |
Первичный ключ (PK) |
Нет |
|
ID Client |
int |
Название клиента |
Внешний ключ (FK) |
Нет |
|
ID Audiobook |
int |
Идентификатор аудиокниги |
Внешний ключ (FK) |
Нет |
|
Sum |
int |
Стоимость заказа |
|
Нет |
“Audiofile”
|
Имя столбца |
Тип данных |
Описание поля |
Комментарий |
Разрешение значений NULL |
|
ID Audiofile |
int |
Идентификатор аудиофайла |
Первичный ключ (PK) |
Нет |
|
ID Audiobook |
int |
Идентификатор аудиокниги |
Внешний ключ (FK) |
Нет |
|
Part |
int |
Порядковый номер части аудиокниги |
|
Да |
|
Length |
varchar(10) |
Длительность |
|
Да |
|
Size |
int |
Размер (MB) |
|
Да |
|
Downloads |
int |
Количество загрузок |
|
Да |
