Составление реляционных отношений



МОСКОВСКИЙ ИНСТИТУТ ЭКОНОМИКИ, МЕНЕДЖМЕНТА И ПРАВА

 

 

Кафедра «Математика и информатика»

 

Курсовое проектирование по дисциплине

«Проектирование информационных систем»

 

 

База данных программной системы «ПОЛИГРАФИЯ»

 

Выполнил:                                      

 

Проверил:                                       

 

 

Москва 2011


Содержание

 

1. Инфологическое проектирование. 3

1.1. Анализ предметной области. 3

1.2. Анализ информационных задач и круга пользователей системы.. 4

2. Определение требований к операционной обстановке. 4

3. Выбор СУБД и других программных средств. 4

4. Логическое проектирование РБД.. 5

4.1. Преобразование ER-диаграммы в схему БД.. 5

4.2. Составление реляционных отношений. 8

4.3. Нормализация полученных отношений. 11

4.4. Описание групп пользователей и прав доступа. 15

5. Физическое проектирование БД.. 16

5.1 Примеры готовых запросов. 16

5.2 Примеры индексов. 16


1. Инфологическое проектирование

 

Анализ предметной области

База данных (БД) разрабатывается для программной системы «ПОЛИГРАФИЯ». Она предназначена для информационного обслуживания сотрудников студенческой полиграфии (СП). БД должна содержать данные о расходных материалах, услугах, поступающих в СП заказах, финансовом состоянии СП и предоставлять возможность получать разнообразные отчеты.

 

Выделим базовые сущности предметной области:

 

· Услуги

· Расходные материалы

· Услуги

· Финансы

· Клиенты

· Рассылки

· Заказы расходных материалов

 

ER-диаграмма разрабатываемой БД приведена на рисунке 1.

 

Рисунок 1. ER-диаграмма

 

 

Анализ информационных задач и круга пользователей системы

ПС создается для обслуживания следующих групп пользователей:

· управляющий;

· кладовщик;

· операторы;

· web-сайт.

 

Разрабатываемая БД должна предоставлять следующие функциональные возможности:

· ведение БД (запись, чтение, модификация, удаление в архив);

· обеспечение целостности и логической непротиворечивости данных;

· обеспечение защиты данных от несанкционированного или случайного доступа (определение прав доступа);

· реализация наиболее часто встречающихся запросов в готовом виде.

 

Часто встречающиеся запросы:

· отобразить список всех услуг;

· отобразить список всех расходных материалов заданного типа;

· отобразить все необработанные заказы клиентов;

· найти заказ клиента по его идентификатору;

· отобразить все заказы расходных материалов;

· отобразить все почтовые рассылки;

· найти всех клиентов, подписавшихся на почтовую рассылку.

 

 

Определение требований к операционной обстановке

Рассчитаем примерный объем памяти, который потребуется для хранения данных в течении одного месяца работы.

 

Mc =2 *(314 *10 +264 *10 +35 *3000 +520 *3000 +15 *100 +268 *1 +14 *3010 +574 *20 +101

*10 +101 *3 +101 *3 +101 *3 +12 *6000 +8 *3 ) = 396111

 

Следовательно за год объем БД не должен превысить 5149443 ≈5.2 мб

 

 

Выбор СУБД и других программных средств

Анализ информационных задач показывает, что для реализации требуемых функций подходят почти все СУБД для ПЭВМ (Oracle, MS Access и др.). Все они поддерживают реляционную модель данных и предоставляют разнообразные возможности для работы с данными.

 

В разрабатываемой ПС потребуется взаимодействие БД с программными модулями, реализованными на языке PHP. Поэтому остановим наш выбор на СУБД MySQL, которая очень популярна в web-разработках. Для разработки БД будет использована MySQL версии 5.1.


Логическое проектирование РБД

Преобразование ER-диаграммы в схему БД

БД создается на основании схемы БД. Для преобразования ER-диаграммы в схему БД приведем уточненную ER-диаграмму, содержащую атрибуты сущностей (рисунок 2).

 


Рисунок 2. Уточненная ER-диаграмма

 


Преобразуем ER-диаграмму в схему БД. Полученная схема БД приведена на рисунке 3.

 

Рисунок 3. Схема БД

 

 


Составление реляционных отношений

Таблица 1. Схема отношения Услуги (Services)

Содержание поля Имя поля Тип, длина Примечания
Идентификатор SRV_ID INT(4) Первичный ключ, уникальный
Название SRV_TITLE CHAR(50) Обязательное поле
Описание SRV_DESCRIPTION CHAR(256) Обязательное поле
Стоимость SRV_COST INT(4,2) Обязательное поле

Таблица 2. Схема отношения Сотрудники (Employers)

Содержание поля Имя поля Тип, длина Примечания
Идентификатор EMP_ID INT(4) Первичный ключ, уникальный
ФИО EMP_INITIALS CHAR(256) Обязательное поле
Должность EMP_POST CHAT(100) Обязательное поле

Таблица 3. Схема отношения Заказ клиента (Client’s Order)

Содержание поля Имя поля Тип, длина Примечания
Идентификатор CO_ID INT(4) Первичный ключ, уникальный
Стоимость CO_COAST INT(4,2) Обязательное поле
Идентификатор клиента CO_CL_ID INT(4) Внешний ключ к Clients
Статус CO_STATUS CHAR(100) Обязательное поле
Дата поступления CO_ENTRY_DATE DATATIME Обязательное поле
Дата выполнения CO_EXECUTE_DATE DATATIME Обязательное поле
Идентификатор сотрудника, принявшего заказ CO_EMP_TAKE_ID INT(4) Внешний ключ к Employers
Идентификатор сотрудника, выполнившего заказ CO_EMP_EXECUTE_ID INT(4) Внешний ключ к Employers, необязательное поле
Идентификатор сотрудника, выдавшего заказ CO_EMP_RETURN_ID INT(4) Внешний ключ к Employers, необязательное поле

Таблица 4. Схема отношения Клиенты(Clients)

Содержание поля Имя поля Тип, длина Примечания
Идентификатор CL_ID INT(4) Первичный ключ, уникальный
ФИО CL_INITIALS CHAR(256) Обязательное поле
Адрес электронной почты CL_EMAIL CHAR(256) Необязательное поле
Признак подписки на почтовую рассылку CL_SUBSCRIPTION BOOL Обязательное поле

Таблица 5. Схема отношения Заказ расходного материала(Stuff’s Order)

Содержание поля Имя поля Тип, длина Примечания
Идентификатор SO_ID INT(4) Первичный ключ, уникальный
Дата поступления заказа SO _DATE DATATIME Обязательное поле
Стоимость SO_COST INT(4,2) Необязательное поле
Идентификатор сотрудника SO_EMP_ID INT(1) Внешний ключ к Employers

Таблица 6. Схема отношения Рассылка(Distribution)

Содержание поля Имя поля Тип, длина Примечания
Идентификатор D_ID INT(4) Первичный ключ, уникальный
Путь к файлу с рассылкой D_PATH CHAR(256) Обязательное поле
Дата создания D_CREATE_DATE DATATIME Обязательное поле
Дата отправления D_SEND_DATE DATATIME Необязательное поле

Таблица 7. Схема отношения Финансы(Finances)

Содержание поля Имя поля Тип, длина Примечания
Идентификатор заказа расходного материала F_SO_ID INT(4)

Исключающая связь, внешний ключ или к Stuff’s Order или к Clients’s Order, уникальный

Идентификатор заказа клиента F_CO_ID INT(4)
Сумма F_PRICE INT(4,2) Обязательное поле, неотрицательное

Таблица 8. Схема отношения Расходный материал(Stuff)

Содержание поля Имя поля Тип, длина Примечания
Идентификатор S_ID INT(4) Первичный ключ, уникальный
Комментарий S_COMMENT CHAR(256) Необязательное поле
Описание S_DESCRIPTION CHAR(256) Обязательное поле
Статус S_STATUS CHAR(100) Обязательное поле
Цена за штуку S_COST INT(4,2) Обязательное поле
Код S_CODE CHAR(50) Необязательное поле
Тип S_TYPE CHAR(100) Обязательное поле

 

 

Таблица 9. Схема отношения Заказ - Услуги(Cleint’s Order - Services)

Содержание поля Имя поля Тип, длина Примечания
Идентификатор заказа клиента CO-S _CL_ID INT(4) Внешний ключ к Clients
Название услуги CO-S_SRV_ID INT(4) Внешний ключ к Services
Количество CO-S_QUANTITY INT(4) Обязательное поле
Ссылка на файл CO-S_PATH CHAR(256) Необязательное поле

 

 

Таблица 10. Схема отношения Услуги – Расходные материалы(Services - Stuff)

Содержание поля Имя поля Тип, длина Примечания
Идентификатор услуги S-S_SRV_ID INT(4) Внешний ключ к Services
Идентификатор расходного материала S-S_S_ID INT(4) Внешний ключ к Stuff

 

 

Таблица 11. Схема отношения Заказ р\м– Расходные материалы(Stuff’s Order - Stuff)


Дата добавления: 2018-05-12; просмотров: 1054; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!