- •1.Введение………………………………………...…………………………………...2
- •1. Введение
- •2. Содержательная постановка задачи
- •3. Описание предметной области
- •4. Концептуальная и логическая модель данных
- •4.1. Определение сущностей
- •2. Определение связей между сущностями
- •3. Построение er-диаграммы
- •4. Определение атрибутов, принадлежащих сущностям
- •5. Определение доменов атрибутов
- •5.Логическая модель.
- •6.Соответствие логической и физической моделей.
- •7.Нормализация таблиц.
- •9. Заключение
- •10. Список используемых источников
5.Логическая модель.
6.Соответствие логической и физической моделей.
При преобразовании логической модели данных в физическую на первоначальном этапе происходит простой перевод логических терминов в физические объекты.
1.Преобразование объектов в таблицу.
В физической модели данных объекту, разработанном на этапе логического моделирования, соответствует таблица БД.
Логическая модель |
|
Физическая модель |
||
Имя сущности |
Описание |
=>
=>
=>
=>
=>
=>
|
Имя таблицы |
Описание |
Товар |
используется для описания товаров, продаваемых в магазине |
Tovar |
содержит информацию о товарах, продаваемых в магазине |
|
Поставщик |
используется для описания поставщиков, которые поставляют товар в магазин |
Supplier |
содержит информацию о поставщиках, сотрудничающих с магазином |
|
Склад |
используется для описания количества имеющихся в магазине товаров |
Storage |
содержит информацию о количестве товара на складе |
|
Договор |
используется для описания договоров, заключенных магазином с контрагентами |
Dogovor |
содержит информацию о договоре, заключенном между магазином и контрагентами |
|
Производитель |
используется для описания производителя данного товара |
Producer |
содержит информацию о производителе товара |
|
Группа |
используется для описания группы товара, к которой он относится |
Group |
содержит информацию о группе, к которой относится товар |
Отдел |
используется для описания отдела магазина, в котором продается данный товар |
=>
=>
=>
=>
|
Department |
содержит информацию об отделе магазина, в котором продается товар |
Сотрудник |
используется для описания сотрудника магазина, заключающего договор |
Employee |
содержит информацию о сотруднике магазина, заключающего договор |
|
Должность |
используется для описания для описания должности, занимаемой сотрудником |
Position |
содержит информацию о должности, занимаемой сотрудником |
|
Единица измерения |
используется для описания единицы измерения товара в магазине |
Unit |
содержит информацию о единице изменения товара |
2. Преобразование атрибутов в столбцы.
При преобразовании объектов в таблицы их атрибуты необходимо преобразовать в столбцы этой таблицы, учитывая возможности и ограничения СУБД при создании физической модели из логической.
3. Преобразование доменов в типы данных.
Каждый домен атрибута логической модели отражается в физический тип данных, с возможностями дополнительного ограничения
4.Определение первичных ключей.
Для каждой из создаваемой при физическом проектировании таблиц необходимо задать первичный ключ. Чаще всего в физической модели данных задается тот же ключ, что и в логической модели БД.
5.Задания порядка расположения столбцов.
Результаты работы СУБД одинаковы и независимы от порядка следования столбцов в таблице.
6.Создание ссылочных ограничений для всех связей.
В физической БД ссылочное ограничение является аналогом отношения между таблицами в логической модели. Для его задания необходимо создать первичный ключ в главной таблице и внешний ключ в подчиненной таблице. Ссылочное ограничения связывает первичный ключ и внешний ключ
Имя атрибута |
Описание домена |
|
Имя столбца |
Тип данных |
Ключевое поле |
Товар |
|
Tovar |
|
||
ТоварАртикул |
Целое число больше нуля |
=>
=>
=>
=>
=> =>
=> =>
|
id |
int |
PK |
ТоварНаименов |
Строка, содержащая не более 50 символов |
name |
text |
|
|
ТоварЕдинИзмер |
Строка, содержащая не более 10 символов |
id_unit |
int |
FK |
|
ТоварЦенаЗакуп |
Денежный тип |
pricez |
Int |
|
|
ТоварЦенаРеализ |
Денежный тип |
pricer |
Int |
|
|
ТоварКодГруппы |
Целое число больше нуля |
id_group |
Int |
FK |
|
Номер лицензии |
Целое число |
license |
Int |
FK |
|
Код производителя |
Целое число |
id_ producer |
int |
FK |
Договор |
|
Dogovor |
|
||
Договор Номер |
Целочисленный тип, положительное значение |
=>
=>
=> =>
=>
|
license |
int |
PK |
ДоговорНачало |
Тип Дата |
date_ begin |
int |
|
|
ДоговорКонец |
Тип Дата |
date_end |
int |
|
|
КодСотрудника |
Целочисленный тип |
Id_ employee |
int |
FK |
|
ДоговорИнформ |
Строка, содержащая не более 30 символов |
info |
text |
|
Склад |
|
Storage |
|
||
ТоварАртикул |
Целочисленный тип, неотрицательное значение |
=>
=>
|
id |
Int |
PK |
ТоварКоличество |
Целочисленный тип, неотрицательное значение |
amount |
int |
|
Поставщик |
|
Supplier |
|
||
ПоставНаим |
Строка, содержащая не более 20 символов |
=>
=>
=>
=>
|
name |
text |
|
ПоставАдрес |
Строка, содержащая не более 50 символов, допустимо пустое значение |
address |
text |
|
|
Номер лицензии |
Целое число |
license |
int |
PK |
|
ПоставРеквизиты |
Строка, содержащая не более 30 символов, допустимо пустое значение |
bank |
int |
|
Производитель |
|
Producer |
|
||
ИмяПроизв |
Строка, содержащая не более 20 символов |
=>
=>
=>
|
name |
text |
|
КодПроизв |
Целое число больше нуля |
id_ producer |
int |
PK |
|
АдресПроизв |
Строка, содержащая не более 50 символов, допустимо пустое значение |
address |
text |
|
Группа |
|
Group |
|
||
НаимГруппы |
Строка, содержащая не более 20 символов |
=>
=> =>
|
name |
text |
|
КодОтдела |
Целое число от 1 до 5 |
id_department |
int |
FK |
|
КодГруппы |
Целое число больше нуля |
id_group |
int |
PK |
Отдел |
|
Department |
|
||
НаимОтдела |
Строка, содержащая не более 20 символов |
=>
=>
|
id |
text |
|
КодОтдела |
Целое число больше нуля |
name |
int |
PK |
Сотрудник |
|
Employee |
|
||
КодСотрудника |
Целое число больше нуля |
=>
=>
=>
=>
|
id_employee |
int |
PK |
Фамилия |
Строка, содержащая не более 20 символов |
surname |
text |
|
|
КодДолжности |
Целое число больше нуля |
id_position |
Int |
FK |
|
Паспорт |
Целое число больше нуля |
passport |
int |
|
Должность |
|
Position |
|
||
НазваниеДолж |
Строка, содержащая не более 20 символов |
=>
=>
|
name |
text |
|
КодДолжности |
Целое число больше нуля |
id_position |
int |
PK |