тність: ТовариЦветаРазмери (Товар, Колір, Розмір), пов'язану з сутністю «Товари» зв'язком «один-до-багатьох» (див. мал.5):
І вже одиницю цієї сутності будемо приймати за одиницю товару в поставках і продажах.
Так як кольори та розміри, також дані, що повторюються, то їх також варто виділити в окремі сутності.
При цьому слід врахувати, що розміри можуть бути різними для різних типів товарів.
Всі додаткові сутності для опису товарів пов'язані з сутністю Товар або ТоварЦветРазмер зв'язком «один-до-багатьох»:
Рис.6. Відношення між сутністю «Типи товарів» і сутністю «Товари»
Рис.7. Відношення між сутністю «Групи товарів» і сутністю «Товари»
Рис.8. Відношення між сутністю «Виробники» і сутністю «Товари»
Рис.9. Відношення між сутністю «Кольори» і сутністю «Товар, Кольори, Розмір»
Рис.10. Відношення між сутністю «Розміри» і сутністю «Товар, Кольори, Розмір
У свою чергу суті Групи товарів і Розміри залежать від Типу товарів (див. рис. 11,12):
Рис.11. Відношення між сутністю «Типи товарів» і сутністю «Розміри»
Рис.12. Відносини між сутністю «Типи товарів» і сутністю «Групи товарів»
Тобто концептуальна модель буде виглядати наступним чином.
Усі зв'язки між сутностями вийшли типу «один-до-багатьох», що говорить про правильність розподілу даних (див. рис.13).
Рис.13. Концептуальна модель зв'язку даних
1.3 Перехід до фізичної моделі. Визначення таблиць, полів і типів даних
Фізична модель бази даних являє собою розміщення даних на носіях, а також метод і засоби організації ефективного доступу до них.
Так як СУБД функціонує в складі і під управлінням операційної системи, і база даних в основному розміщується на пристроях загального доступу, використовуваних самій операційній системі та іншими прикладними програмами, то організація зберігання даних і доступу до них у значній мірі залежить від принципів і методів управління даними операційної системи.
Кожній сутності буде відповідати таблиця бази даних, кожному атрибуту - поле.
Для зв'язку між таблицями додамо в кожну з них первинний ключ, нехай це буде поле лічильник з назвою Код. Крім того лічильник корисний для сортування, вибірки, пошуку даних.
Імена таблиць і полів в них повинні бути без пробілів для зручності звернення до них. Тип даних вибираємо по вмісту.
Тобто отримуємо наступні таблиці:
Таблиця 3
Групи товарів
№ п/п Найменування поляТіп даннихПрімечаніе1КодГруппиСчетчікПервічний ключ2Тіп_товараЧісловойВнешній ключ, пов'язано з первинним ключем таблиці Тіпи_товаров3Группа_товаровТекстовий
Таблиця 4
Курс валют
№ п/п Найменування поляТіп даннихПрімечаніе1КодКурсСчетчікПервічний ключ2ДатаДата/время3КурсЧісловой
Таблиця 5
Магазини
№ п/п Найменування поляТіп даннихПрімечаніе1КодМагСчетчікПервічний ключ2НазваниеТекстовый3АдресТекстовый4ФИО_дирТекстовый
Таблиця 6
Розміри
№ п/п Найменування поляТіп даннихПрімечаніе1КодРазмераСчетчікПервічний ключ2Тіп_товараЧісловойВнешній ключ, пов'язано з первинним ключем таблиці Тіпи_товаров3РазмерТекстовий
Таблиця 7
Кольори
№ п/п Найменування поляТіп даннихПрімечаніе1КодЦветаСчетчікПервічний ключ2ЦветТекстовий
Таблиця 8
Типи товарів
№ п/п Найменування поляТіп даннихПрімечаніе1КодТіпТовараСчетчікПервічний ключ2Тіп_товараТекстовий Таблиця 9
Виробники
№ п/п Найменування поляТіп даннихПрімечаніе1КодПроізвСчетчікПервічний ключ2ПроізводітельТекстовий
Таблиця 10
Товари
№ п/п Найменування поляТіп даннихПрімечаніе1КодТовараСчетчікПервічний ключ2Тіп товараЧісловойВнешній ключ, пов'язано з первинним ключем таблиці Тіпи_товаров3Группа товараЧісловойВнешній ключ, пов'язано з первинним ключем таблиці Группи_товаров4ПроізводітельЧісловойВнешній ключ, пов'язано з первинним ключем таблиці Проізводітелі5ОпісаніеТекстовий
Таблиця 11
Товари, Кольори, Роз...