Процес проектування БД являє собою послідовність переходів від мовного опису інформаційної структури предметної області до формалізованого опису у вигяді деякої моделі.. Навчальна презентація висвітлює основи побудови концептуаьної моделі бази даних.
Семантичні моделіголовну увагу приділяють структурі даних. Найбільш поширеною семантичною моделлю є модель "сутність – зв'язок" (Entity Relationship model, ER-модель). ER-модель складається із сутностей, зв'язків, атрибутів, доменів атрибутів, ключів. Моделювання даних відображає логічну структуру даних, так само, як блок-схеми алгоритмів відображають логічну структуру програми.
Об'єктні моделі головну увагу приділяють поведінці об'єктів даних і засобам маніпуляції даними. Головне поняття таких моделей − об'єкт, тобто сутність, яка має стан і поведінку. Стан об'єкта визначається сукупністю його атрибутів, а поведінка об'єкта визначається сукупністю операцій специфікованих для нього.
Модель "сутність-зв'язок"ER-моделювання являє низхідний підхід до проектування БД, який починається з визначення найбільш важливих даних, які називають сутностями (entities), і зв'язків (relationships) між даними, які повинні бути представлені в моделі. Потім модель доповнюється властивостями сутностей і зв'язків, що мають назву - атрибути (attributes), а також обмеженнями, які відносяться до сутностей, зв'язків і атрибутів. ER-модель дає графічне представлення логічних об'єктів і їх відношень в структурі БД у вигляді діаграми.
Діаграми Чена. У подальшому діаграми Чена набули розвитку у багатьох інших роботах з ER- моделювання. До них належать такі моделі: − "пташина лапка", розроблена К. М. Бахманом; − IDEF1 X, розроблена Т. Ремеєм; − на основі UML; − модель Баркера та багато інших моделей. Вперше поняття ER-моделі запровадив американский вчений в області інформатики Пітер Чен у 1976 році. Підхід П. Чена дозволив концептуальне моделювання перевести в практичну площину проектування БД.
Сутності Сутність дозволяє моделювати клас однотипних об'єктів. Сутність має унікальне ім'я у межах заданої системи. Передбачається, що в системі існує багато екземплярів даної сутності. Об'єкт, якому відповідає сутність, має набір атрибутів, які характеризують його властивості. Цей набір повинен бути таким, щоби можна було розрізняти конкретні екземпляри сутності. Приклад. Сутність Викладач може мати такі атрибути: Табельний номер, Прізвище, Ім'я, По батькові, Посада, Вчений ступінь. Набір атрибутів, що однозначно ідентифікує конкретний екземпляр сутності, називають ключовим. У наведеному прикладі для сутності Викладач ключем буде Табельний номер, оскільки для всіх викладачів табельні номери різні. Екземпляром сутності Викладач буде опис конкретного викладача. Загальноприйняте позначення сутності − прямокутник (рис. 2).
Слабкі та незалежні сутностіЯкщо сутність може існувати незалежно від інших, то вона є незалежною, наприклад, сутності Студент і Група. Слабкою сутністю називають таку, що задовольняє умовам: − залежність від існування сутності з якою вона зв'язана; − первинний ключ цієї сутності частково або повністю отримується з іншої сутності. Слабка сутність на діаграмі Чена позначається подвійним прямокутником, а на діаграмі "пташина лапка" невеликими сегментами в кожному з кутів прямокутника. Приклад. Сутність Нагорода є слабкою по відношенню до сутності Студент: вона залежить від існування цієї сутності і в її первинний ключ входить первинний ключ сутності Студент . Рис. 5.10 Слабка сутність на діаграмах П. Чена і "пташина лапка"
Атрибути Атрибути являють собою властивості сутності. Значення кожного атрибута вибирають з відповідної множини значень, яка включає всі потенційні значення, які можуть бути присвоєні атрибуту. Ця множина значень називається доменом. Приклад. Атрибут Оцінка може приймати такі значення: 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12. Ці значення і складають домен цього атрибута. Атрибути залежно від складності значень, які вони можуть приймати поділяються на певні категорії.
ER-діаграма Чена сутності Студент Атрибути номер залікової книжки, рік народження є простими. Атрибути ПІБ і Адреса є складовими. ПІБ може бути поділений на атрибути: прізвище, ім'я, по батькові, а Адреса − на індекс, місто, вулиця, будівля, квартира. Атрибут Вік є похідним: він обчислюється за значенням атрибута Рік народження (зображається пунктирною лінією). Атрибут Номер залікової книжки є однозначним: він не може приймати два значення для одного студента. Атрибут Номер телефону є багатозначним: він може приймати декілька значень для одного студента (зображується подвійною лінією).
Первинний ключ. Атрибут або набір атрибутів сутності, які застосо-вуються для ідентифікації екземпляра сутності, називають первинним ключем, який обирається за умови гарантії унікальності та мінімальної довжини атрибутів, які входять в його склад. Для сутності Студент первинним ключем слугує Номер залікової книжки.
Зв'язки Між сутностями встановлюються зв'язки, які вказують яким чином сутності співвідносяться або взаємодіють між собою. Розрізняють такі зв'язки: − між двома сутностями (бінарний зв'язок); − між трьома сутностями (тернарний зв'язок); − між N сутностями (N-арний зв'язок). Найбільш поширеними є бінарні зв'язки. Бінарні зв'язки бувають: − 1:1 (один до одного); −1: M(один до багатьох): на кафедрі працює багато викладачів, а кожен викладач працює тільки на одній кафедрі; −N: M (багато до багатьох): студент займається у багатьох викладачів, а кожен викладач навчає багатьох студентів..
Потужність зв'язків(кардинальність) Потужність зв'язку відображає певне число екземплярів сутностей, які зв'язані з одним екземпляром зв'язаної сутності. В моделі Чена потужність зв'язку вказують відповідним числом поруч з сутностями у форматі (x, y). Перше число визначає мінімальне значення потужності зв'язку, а друге − його максимальне значення. Потужність вказує на число екземплярів у зв'язаній сутності. .
Приклад. Зв'язок Група-Студент в ER-діаграмах Потужність (1,30) поруч із сутністю Група вказує, що в групі може займатися від 1 до 30 студентів. Потужність (1,1) поруч із сутністю Студент вказує, що студент може займатися тільки в одній групі (мінімум 1, максимум 1). У моделі "пташина лапка" числовий діапазон значень потужності не відображається в ER-діаграмах.
Сильні та слабкі зв'язки. Зв’язок між незалежними сутностями називають неідентифікаційним зв'язком або слабким. На ER-діаграмах "пташина лапка" він відображається штриховою лінією. Ідентифікаційний зв'язок або сильний зв'язок має місце, коли одна зв'язана сутність залежить від існування іншої. На ER-діаграмах "пташина лапка" сильний зв'язок відображається суцільною лінією. а) Неідентифікаційний (слабкий ) зв'язокб) Ідентифікаційний (сильний) зв'язок
Обов'язкові та необов'язкові зв'язки. Якщо один екземпляр сутності не вимагає наявності відповідного екземпляра сутності в зв'язку, то зв'язок є необов'язковим. Наприклад, у зв'язку сутностей Студент-Нагорода − не кожен студент має нагороди. Сутність Нагорода розглядається як необов'язкова по відношенню до сутності Студент. Необов'язкова сутність позначається невеликим колом з боку необов'язкової сутності. Мінімальне значення для необов'язкової сутності потужності зв'язку дорівнює 0. При обов'язковому зв'язку для обов'язкової сутності мінімальна потужність зв'язку дорівнює 1.
Різні зв'язки між двома сутностями Між двома сутностями може бути декілька зв'язків з різними змістовними навантаженнями. Приклад. Між сутностями Викладач і Студент можна встановити такі змістовні зв'язки: Викладає і Керівництво дипломним проектуванням. Викладач викладає для багатьох студентів, для кожного студента викладає багато викладачів. Кожен студент обов'язково повинен мати одного керівника дипломного проекту, але необов'язково кожен викладач керує дипломниками .
Розширена модель "сутність – зв'язок" Enhanced Entity Relationship, EER-модель включає всі концепції ER-моделі плюс концепції уточнення, узагальнення, агрегування і композиції, які базуються на поняттях суперклас і підклас. Суперклас може мати декілька підкласів . Так підкласи Викладач, Керівник, Лаборант є членами суперкласу Співробітник. Кожен екземпляр підкласу є в той же час і екземпляром суперкласу. Зв'язок між суперкласом і підкласом відноситься до типу 1:1. Для підкласів визначають власні атрибути і атрибути, що наслідуються від суперкласу. Наприклад, підклас Викладач повинен мати ті ж атрибути, що і всі Співробітники. Однак він має і свої власні атрибути: вчене звання, номер диплому про вчене звання, кількість навчально-методичних праць тощо. При відсутності підкласів для об'єкту Співробітник слід було б вводити атрибути, які б мали невизначене значення для інших співробітників (наприклад для лаборантів). Підклас може мати свої власні зв'язки, які не підходять для всіх екземплярів суперкласу.
Приклад. Відношення суперклас – підклас. Діаграма з використанням понять суперклас і підклас Якщо підкласи суперкласу не перетинаються, то це означає, що кожен екземпляр сутності може бути елементом тільки одного з підкласів (позначається Or). Зв'язки, які не перетинаються позначаються символом "G". Якщо підкласи суперкласу перетинаються, то це означає, що будь-який екземпляр сутності може бути елементом декількох з підкласів (позначається And). Зв’язки які перетинаються позначаються символом "Gs".