Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Тема4 Практ_1.doc
Скачиваний:
1
Добавлен:
17.08.2019
Размер:
102.4 Кб
Скачать

Існують три основні класи сутності:

  • стержневі;

  • асоціативні

  • характеристичні

А також підклас асоціативних сутностей - позначення.

Стержнева сутність (стержень) - це незалежна сутність. Наприклад, стержнями є: "Студент", "Квартира", "Чоловіки", "Лікар", "Брак".

Асоціативна сутність (асоціація) - це зв'язок між двома або більш сутностями. Асоціації розглядаються як повноправні сутності. Наприклад, асоціація "Брак" містять ключові атрибути "Код_М", "Код_Ж" і "Табельний номер мужа", "Табельний номер дружини", а також уточнюючі атрибути "Номер свідоцтва", "Дата реєстрації", "Місце реєстрації", "Номер запису в книгу ЗАГС" і так далі.

Характеристична сутність (характеристика) - це зв'язок вигляду "багато-до-однієї" або "одна-до-одній" між двома сутностями (окремий випадок асоціації). Єдина мета характеристики в рамках даної наочної області полягає в описі або уточненні деякій іншої сутності.

Позначаюча сутність або позначення - це зв'язок вигляду "багато-до-одній" або "одна-до-одній" між двома сутностями і відрізняється від характеристики тим, що не залежить від сутності, що позначається.

При побудові інфологічних моделей можна використовувати мову ER-діаграм.

У них сутності зображуються поміченими прямокутниками, асоціації - поміченими ромбами або шестикутниками, атрибути - поміченими овалами, а зв'язки між ними - не напрямленими ребрами, над якими може проставлятися міри зв'язку (1 або буква, замінюючи слово "багато") і необхідне пояснення (рис. 1.1).

Рис. 1.1 Позначення, використовувані в ER- діаграмах.

Мова ER- діаграм використовується для побудови невеликих моделей і ілюстрації окремих фрагментів великих. Частіше ж застосовується менш наочна, але змістовніша мова інфологічного моделювання (ЯІМ), в якому сутності і асоціації представляються пропозиціями вигляду:

СУТНІСТЬ (атрибут 1, атрибут 2 , ..., атрибут n)

АСОЦІАЦІЯ [СУТНІСТЬ S1, СУТНІСТЬ S2, ...]

(атрибут 1, атрибут 2, ..., атрибут n)

ХАРАКТЕРИСТИКА (атрибут 1, атрибут 2, ...)

{СПИСОК СУТНОСТЕЙ, ЩО ХАРАКТЕРИЗУЮТЬСЯ}

ПОЗНАЧЕННЯ (атрибут 1, атрибут 2, ...)

[СПИСОК СУТНОСТЕЙ, ЩО ПОЗНАЧАЮТЬСЯ]

де S - міра зв'язку, а атрибути, що входять в ключ, мають бути відмічені за допомогою підкреслення.

Розглянемо приклад побудови інфологічної моделі бази даних "Харчування", де повинна зберігатися інформація про блюда, їх щоденний вжиток, продукти, з яких готуються ці блюда, і постачальників цих продуктів. Інформація використовуватиметься кухарем і керівником невеликого підприємства громадського харчування.

За допомогою вказаних користувачів виділені наступні об'єкти і характеристики проектованої бази:

  • Блюда, для опису яких потрібні дані, що входять в їх кулінарні рецепти: номер блюда (наприклад, з книги кулінарних рецептів), назва блюда, вигляд блюда (закуска, суп, гарячіше і тому подібне), рецепт (технологія приготування блюда), вихід (вага порції), назва, калорійність і вага кожного продукту, що входить в блюдо.

  • Для кожного постачальника продуктів: найменування, адреса, назва продукту, що поставляється, дата постачання і ціна на момент постачання.

  • Щоденний вжиток блюд (витрата): блюдо, кількість порцій, дата.

Аналіз об'єктів дозволяє виділити:

  • Стержні: Блюда, Продукти і Міста;

  • Асоціації: Склад (пов'язує Блюда з Продуктами) і Постачання (пов'язує Постачальників з Продуктами);

  • Позначення: Постачальники;

  • Характеристики: Рецепти і Витрата.

ER- діаграма моделі бази даних "Харчування" має наступний вигляд (рис. 1.2)

Рис. 1.2 Інфологична модель бази даних "Харчування". ER-діаграма.

Для прикладу бази даних "Харчування" модель на мові ЯІМ має наступний вигляд:

Блюда (БЛ, Блюдо, Вид)

Продукти (ПР, Продукт, Калорійність)

Постачальники (ПОС, Місто, Постачальник) [Місто]

Склад [Блюда M, Продукти N] (БЛ, ПР, Вага (г))

Постачання [Постачальники M, Продукти N] (ПОС, ПР, Дата_П, Ціна, Вага (кг))

Міста (Місто, Країна)

Рецепти (БЛ, Рецепт) {Блюда}

Витрата (БЛ, Дата_Р, Порцій) {Блюда}

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]