
- •Особливості інформаційних систем
- •Бази даних – основа інформаційних систем
- •Перспективи розвитку баз даних
- •Висновок
- •1 Системи керування файлами
- •2 Основні особливості систем, заснованих на інвертованих списках
- •3 Ієрархічні системи
- •Висновок
- •1 Основні поняття реляційних баз даних
- •2 Фундаментальні властивості відносин
- •3 Реляційна модель даних
- •Висновок
- •Проектування бази даних. Інфологічна і даталогічна моделі даних План
- •Інфологічна модель даних
- •Основні конструктивні елементи інфологічної моделі
- •1. Інфологічна модель даних
- •2. Основні конструктивні елементи інфологічної моделі
- •Висновок
- •2. Моделювання бд за допомогою мови інфологічного моделювання (мім)
- •3. Класифікація сутностей
- •Характеристика (атрибут 1, атрибут 2, ...) {список характеризуемих сутностей}.
- •Висновок
- •Проектування реляційних баз даних з використанням нормалізації План
- •Поняття про нормалізацію відносин
- •Одержання реляційної схеми з er-схеми
- •Поняття про нормалізацію відносин
- •Одержання реляційної схеми з er-схеми у висновку процесу проектування розглянемо етапи перетворення інфологічної моделі в реляційну схему бази даних.
- •Висновок
- •1. Структура найпростішої бази даних
- •2. Властивості полів бази даних
- •3. Типи даних
- •4. Безпека баз даних
- •5. Проектування баз даних. Режими роботи з базами даних
- •6. Проектування баз даних. Об'єкти бази даних
- •Література
2. Моделювання бд за допомогою мови інфологічного моделювання (мім)
Як правило мова ER-діаграм використовується для побудови невеликих моделей або для ілюстрації окремих фрагментів великих. Частіше ж застосовується менш наочна, але більш змістовна мова інфологічного моделювання (МІМ), у якому сутності й асоціації представляються пропозиціями виду:
СУТНІСТЬ (атрибут 1, атрибут 2 , ..., атрибут n)
АСОЦІАЦІЯ [СУТНІСТЬ S1, СУТНІСТЬ S2, ...]
(атрибут 1, атрибут 2, ..., атрибут n,
де S – ступінь зв'язку, а атрибути, що входять у ключ, повинні бути відзначені за допомогою підкреслення.
Так, розглянутий вище приклад безлічі зв'язків між сутностями, може бути описаний на МІМ у такий спосіб:
Лікар (Номер_лікаря, Прізвище, Ім'я, По батькові, Спеціальність)
Пацієнт (Реєстраційний_номер, Номер ліжка, Прізвище,
Ім'я, По батькові, Адреса, Дата народження, Стать)
Сімейний лікар [Лікар 1, Пацієнт M]
(Номер_лікаря, Реєстраційний_номер)
Консультант [Лікар M, Пацієнт N]
(Номер_лікаря,
Реєстраційний_номер).
Рис. 5.5. Приклади ER-діаграм.
Для виявлення зв'язків між сутностями необхідно, як мінімум, визначити самі сутності. Але це не проста задача, тому що в різних предметних областях той самий об'єкт може бути сутністю, атрибутом або асоціацією. Проілюструємо таке твердження на прикладах, зв'язаних з описом шлюбних зв'язків (див. Рис.5.5.).
Приклад 2.2. Відділ записів актів громадянського стану (ЗАГС) має справа не з усіма людьми, а тільки з тими, хто звернувся з проханням про реєстрацію шлюбу, або народження смерті. Тому в країнах, де допускаються лише традиційні шлюби, відділи РАГС можуть розміщати зведення про осіб які реєструються в шлюби в єдиній сутності:
Шлюб (Номер_свідоцтва, Прізвище_чоловіка, Ім'я_чоловіка, По батькові_чоловіка, Дата_народження_чоловіка, різвище_дружини, ... , Дата_реєстрації, Місце_реєстрації, ...), ER-діаграма якої приведена на рис.5.5.
Приклад 2.3. Тепер розглянемо ситуацію, коли відділ ЗАГС розташований у країні, що допускає багатоженство. Якщо для реєстрації шлюбів використовувати сутність "Шлюб" прикладу 2.2, то будуть дублюватися відомості про чоловіків, що мають кілька дружин ( табл. 3).
Таблиця 3.
Номер посвідчення |
Прізвище чоловіка |
... |
Прізвище дружини |
... |
Дата реєстрації |
1-ЮБ 154745 |
Пєтухов |
... |
Курочкіна |
... |
06/03/1991 |
1-ЮБ 163489 |
Пєтухов |
... |
Пєструшкіна |
... |
11/08/1991 |
1-ЮБ 169887 |
Пєтухов |
... |
Рябова |
... |
12/12/1992 |
1-ЮБ 169878 |
Селезньов |
... |
Уточкіна |
... |
12/12/1992 |
1-ЮБ 154746 |
Парасюк |
... |
Свинюшкіна |
... |
06/03/1991 |
1-ЮБ 169879 |
Парасюк |
... |
Хавронія |
... |
12/12/1992 |
Дублювання можна виключити створенням додаткової сутності "Чоловіки" (Код_М, Прізвище, Ім'я, По батькові, Дата народження, Місце народження), заміною сутності "Шлюб" характеристикою з посиланням на відповідний опис у сутності "Чоловіки". Шлюб (Номер посвідчення, Код_М, Прізвище дружини, ..., Дата реєстрації, ...){Чоловіки}.
ER-діаграма зв'язку цих сутностей показана на мал. 5.9у, а приклад їх екземплярів у табл. 4 і 5.
Таблиця 4.
Код_М |
Прізвище |
Ім'я |
По батькові |
Рік нар. |
Місце народж. |
111 |
Пєтухов |
Альфред |
Остапович |
1971 |
м. Цапелька |
112 |
Селезньов |
Вавила |
Абрамович |
1973 |
м. Гусєв |
113 |
Парасюк |
Горацій |
Феодулович |
1972 |
м. Свин |
Таблиця 5.
Номер свідчення |
Код_М |
Прізвище дружини |
Ім'я дружини |
Дата реєстрації |
1-ЮБ 154745 |
111 |
Курочкіна |
Августина |
06/03/1991 |
1-ЮБ 163489 |
111 |
Пєструшкіна |
Маріана |
11/08/1991 |
1-ЮБ 169877 |
111 |
Рябова |
Милана |
12/12/1992 |
1-ЮБ 169878 |
112 |
Уточкіна |
Вероніка |
12/12/1992 |
1-ЮБ 154746 |
113 |
Свинюшкіна |
Ельвіра |
06/03/1991 |
1_ЮБ 169879 |
113 |
Хавронія |
Руфіна |
12/12/1992 |
Приклад 2.4. Нарешті, розглянемо випадок, коли якій-небудь організації потрібні були дані про наявність у ній сімейних пар, а для збереження відомостей про співробітників уже є сутність:
Співробітники (Табельний_номер, Прізвище, Ім'я, ...).
Використання, розглянутої в прикладі 2.2, сутності "Шлюб" недоцільно: у "Співробітники" уже є прізвища, імена, по батькові чоловіків. Тому створимо асоціацію:
Шлюб [Співробітник 1, Співробітник 1]
(Табельний_номер_чоловіка, Табельний_номер_дружини, ...),
що єднає між собою визначені екземпляри сутності "Співробітники" (рис. 5.5г).
Отже відзначимо, що ER-діаграма рис. 5.5а описує структуру розміщення даних про шлюби у відділах ЗАГС країн, що допускають групові шлюби, а ER-діаграми прикладу 2.1, опису будь-яких видів шлюбів в організаціях, де є сутності "чоловіка" і "жінки", що включають неодружених і незаміжніх. У ER-діаграмах це лінія, що з'єднує геометричні фігури, що зображують сутності, атрибути, асоціації й інші інформаційні об'єкти. У тексті ж цей термін використовується для вказівки на взаємозалежність сутностей.