Логічне проектування

У якості логічній моделі бази даних була обрана реляційна модель, оскільки саме реляційна модель використовується у більшості розвинених СКБД.

Для перетворення концептуальної моделі, представленої у вигляді мови ER–моделювання, у реляційну модель, був використаний наступний алгоритм.

· Крок 1. Перетворення сутностей у таблиці. Кожна сутність перетворюється у таблицю. Ім’я сутності представляється у вигляді семантично осмисленого імені у латинському алфавіті.

· Крок 2. Перетворення атрибутів у стовпці. Кожний атрибут перетвориться в стовпець. Ім’я атрибуту представляється у вигляді семантично осмисленого імені у латинському алфавіті. У цей момент уточнюється формат представлення значень стовпця. Факультативні атрибути стають NULL-стовпцями. Обов'язкові атрибути стають NOT NULL-стовпцями.

· Крок 3. Подання унікальних ідентифікаторів ключами таблиць. Складові унікального ідентифікатора сутності стають первинним ключем таблиці. Нагадаємо, що сутність може мати більш ніж один унікальний ідентифікатор Тому вибирається той, котрий використовується найбільше часто. Всі інші унікальні ідентифікатори приймають обмеження цілісності UNIQUE NOT та NOT NULL.

Рис. Концептуальна ER-модель проходження практики студентами

Сутність може унікально ідентифікуватися комбінацією атрибутів і/або зв'язків. При використанні в ідентифікаторі сутності зв'язку до складу первинного ключа включається зовнішній ключ, який посилається на ту таблицю, з якою пов’язаний той або інший зв’язок.

· Крок 4. Перетворення зв'язків багато-до-одного й один-до-одного в зовнішні ключі. Зв'язки типу багато-до-одного й один-до-одного породжують зовнішні ключі. Інакше кажучи, необхідно взяти унікальні ідентифікатори кожної сутності, розташованої в закінчення зв'язку зі ступенем один, і ввести його у відношення, розташоване з боку зв'язку "багато" як стовпці. Факультативним зв'язкам відповідають NULL-стовпці. Обов'язковим зв'язкам відповідають NOT NULL-стовпці.

· Крок 5. Введення спеціальних первинних ключів. Для більш адекватного відображення логічного проекту бази даних у фізичний, вводимо у всі таблиці один спеціальний стовпець з обмеженням цілісності первинного ключа. Всі ті стовпці, які мають властивість первинного ключа згідно з концептуальною моделлю, набувають обмеження цілісності UNIQUE та NOT NULL.

Повна логічна база даних на основі концептуальної моделі з урахуванням обмежень цілісності та наведеного вище алгоритму детально представлена в наступних таблицях.

Таблиця 1. Відношення сутності НАВЧАЛЬНИЙ ПЛАН

EDU_PLAN

Ім’я стовпця Тип Дов­жина Призначення Обмеження цілісності стовпців
EPID ціле число   Унікальний ID Первинний ключ
Num строка   Номер навч. плану Унікальний, обов’язковий
Ass_date дата   Дата затвердження Обов’язковий
Prs строка   Особа, що затвердила Обов’язковий
SPID ціле число   Зв’язок зі спеціальністю Зовнішній ключ, що посилається на первин­ний ключ відношення SPECIALITY. Обов’язковий

Таблиця 2. Відношення сутності ЗАПЛАНОВАНА ПРАКТИКА

PLAN_PRACTICE

Ім’я стовпця Тип Дов­жина Призначення Обмеження цілісності стовпців
PPID ціле число   Унікальний ID Первинний ключ
Dur_type строка   Одиниці виміру термі­ну проходження прак­ти­ки. Приймає значен­ня „Д”–дні, „Т”–тижні Обов’язковий
Duration ціле число   Термін проходження пра­к­тики Обов’язковий
QLID ціле число   Зв’язок з кваліфікацій­ним рівнем Зовнішній ключ, що посилається на первин­ний ключ відношення QUALI_LEVEL. Обов’язковий
CUID ціле число   Зв’язок з курсом Зовнішній ключ, що посилається на первин­ний ключ відношення COURSE. Обов’язковий
PTID ціле число   Зв’язок з видом практи­ки Зовнішній ключ, що посилається на первин­ний ключ відношення PRAC_TYPE. Обов’язковий
EPID ціле число   Зв’язок з навчальним пла­ном Зовнішній ключ, що посилається на первин­ний ключ відношення EDU_PLAN. Обов’язковий
Обмеження цілісності таблиці Сукупність стовпців (CUID, EPID) має обмеження унікальності та обов’язковості.

Таблиця 3. Відношення сутності ВИД ПРАКТИКИ

PRAC_TYPE

Ім’я стовпця Тип Дов­жина Призначення Обмеження цілісності стовпців
PTID ціле число   Унікальний ID Первинний ключ
Name строка   Назва практики Унікальний, обов’язковий. Прий­має значення: схемотехнічна; ком­п’ютерна; тех­но­ло­гічна; експ­лу­ата­ційна (для спеціалістів нау­ково-дослідна (для магістрів).
Descr строка   Змістовний опис Факультативний

Таблиця 4. Відношення сутності КВАЛІФІКАЦІЙНИЙ РІВЕНЬ

QUALI_LEVEL

Ім’я стовпця Тип Дов­жина Призначення Обмеження цілісності стовпців
QLID ціле число   Унікальний ID Первинний ключ
Name строка   Назва кваліфікаційного рівня Унікальний, обов’язковий. Прий­має значення: бакалавр; спеціа­ліст; магістр.
Descr строка   Змістовний опис Факультативний
CUID ціле число   Зв’язок з курсом Зовнішній ключ, що посилається на первин­ний ключ відношення COURSE. Обов’язковий

Таблиця 5. Відношення сутності СПЕЦІАЛЬНІСТЬ

SPECIALITY

Ім’я стовпця Тип Дов­жина Призначення Обмеження цілісності стовпців
SPID ціле число   Унікальний ID Первинний ключ
Num строка   Номер спеціальності Унікальний, обов’язковий.
Name строка   Назва спеціальності Обов’язковий

Таблиця 6. Відношення сутності КУРС

COURSE

Ім’я стовпця Тип Дов­жина Призначення Обмеження цілісності стовпців
CUID ціле число   Унікальний ID Первинний ключ
Num ціле число   Номер курсу Унікальний, обов’язковий. Прий­має значення: 1-6.
Descr строка   Змістовний опис Факультативний

Таблиця 7. Відношення сутності ВУЗ

UNIVERSITY

Ім’я стовпця Тип Дов­жина Призначення Обмеження цілісності стовпців
UNID ціле число   Унікальний ID Первинний ключ
Short_Name строка   Скорочена назва ВУЗу Факультативний.
Long_Name строка   Повна назва ВУЗу Обов’язковий, унікальний
Address строка   Адреса ВУЗу Факультативний
Rector строка   ПІБ ректора Обов’язковий, унікальний

Таблиця 8. Відношення сутності ІНСТИТУТ

INSTITUTE

Ім’я стовпця Тип Дов­жина Призначення Обмеження цілісності стовпців
INID ціле число   Унікальний ID Первинний ключ
Short_Name строка   Скорочена назва Факультативний.
Long_Name строка   Повна назва Обов’язковий, унікальний
Director строка   ПІБ директора Обов’язковий, унікальний
UNID ціле число   Зв’язок з ВУЗом Зовнішній ключ, що посилається на первин­ний ключ відношення UNIVERSITY. Обов’язковий

Таблиця 9. Відношення сутності ФАКУЛЬТЕТ

FACULTY

Ім’я стовпця Тип Дов­жина Призначення Обмеження цілісності стовпців
FAID ціле число   Унікальний ID Первинний ключ
Short_Name строка   Скорочена назва Факультативний.
Long_Name строка   Повна назва Обов’язковий, унікальний
Dean строка   ПІБ декана Обов’язковий, унікальний
UNID ціле число   Зв’язок з ВУЗом Зовнішній ключ, що посилається на первин­ний ключ відношення UNIVERSITY. Факультативний
INID ціле число   Зв’язок з інститутом Зовнішній ключ, що посилається на первин­ний ключ відношення INSTITUTE,. Факультативний
FKType строка   Признак, кому належить факультет, ВУЗу або інституту Приймає значення: „У”, якщо факультет належить UNIVERSI­TY, або “І”, якщо факультет належить INSTITUTE

Таблиця 10. Відношення сутності КАФЕДРА

DEPARTMENT

Ім’я стовпця Тип Дов­жина Призначення Обмеження цілісності стовпців
DEID ціле число   Унікальний ID Первинний ключ
Short_Name строка   Скорочена назва Факультативний.
Long_Name строка   Повна назва Обов’язковий, унікальний
Head строка   ПІБ завідувача Обов’язковий, факультативний
FAID ціле число   Зв’язок з факультетом Зовнішній ключ, що посилається на первин­ний ключ відношення FACILTY. Обов’язковий

Таблиця 11. Відношення сутності ГРУПА

STGROUP

Ім’я стовпця Тип Дов­жина Призначення Обмеження цілісності стовпців
GRID ціле число   Унікальний ID Первинний ключ
Num строка   Номер групи Обов’язковий, унікальний у межах факультету
Descr строка   Змістовний опис групи Факультативний
DEID ціле число   Зв’язок з кафедрою Зовнішній ключ, що посилається на первин­ний ключ відношення DEPARTMENT. Обов’язковий
CUID ціле число   Зв’язок з курсом Зовнішній ключ, що посилається на первин­ний ключ відношення COURSE. Обов’язковий

Таблиця 12. Відношення сутності СТУДЕНТ

STUDENT

Ім’я стовпця Тип Дов­жина Призначення Обмеження цілісності стовпців
STID ціле число   Унікальний ID Первинний ключ
Last_name строка   Прізвище Обов’язковий
Name строка   Ім’я Обов’язковий
Patro_name строка   По батькові Обов’язковий
Num строка   Номер студентського квитка Обов’язковий, унікальний
Birthday дата   Дата народження Обов’язковий
Year ціле число   Рік вступу у ВУЗ Обов’язковий
Country строка   Країна мешкання Обов’язковий
Contract строка   Навчання за контрактом Обов’язковий. „T” – навчання за контрактом, „H” - ні
External строка   Навчання екстерном Обов’язковий. „T” – навчання екстерном, „H” - ні
GRID ціле число   Зв’язок з групою Зовнішній ключ, що посилається на первин­ний ключ відношення STGROUP. Обов’язковий

Таблиця 13. Відношення сутності БАЗА ПРАКТИКИ

COMPANY

Ім’я стовпця Тип Дов­жина Призначення Обмеження цілісності стовпців
COID ціле число   Унікальний ID Первинний ключ
Num строка   Реєстровий номер Обов’язковий, унікальний
Name строка   Назва Обов’язковий
Head строка   ПІБ керівника Обов’язковий
Post строка   Посада керівника Обов’язковий
Address строка   Адреса Факультативний

Таблиця 14. Відношення сутності ДОГОВІР

AGREEMENT

Ім’я стовпця Тип Дов­жина Призначення Обмеження цілісності стовпців
AGID ціле число   Унікальний ID Первинний ключ
Num строка   Номер договору Обов’язковий, унікальний
AssDate дата   Дата підписання Обов’язковий
St_num ціле число   Кількість студентів Обов’язковий
From_date дата   Дата початку практики Обов’язковий
To_date дата   Дата закінчення практики Обов’язковий
COID ціле число   Зв’язок з базою практики Зовнішній ключ, що посилається на первин­ний ключ відношення COMPANY. Обов’язковий
FAID ціле число   Зв’язок з кафедрою Зовнішній ключ, що посилається на первин­ний ключ відношення FACULTY. Обов’язковий

Таблиця 15. Відношення сутності КЕРІВНИК

TUTOR

Ім’я стовпця Тип Дов­жина Призначення Обмеження цілісності стовпців
TUID ціле число   Унікальний ID Первинний ключ
Name строка   ПІБ керівника Обов’язковий
Post строка   Посада Факультативний
Address строка   Адреса Факультативний
Pas_ser строка   Серія паспорту Обов’язковий
Pas_ num строка   Номер паспорту Обов’язковий
Обмеження цілісності таблиці Сукупність стовпців (PasSer, PasNum) має обмеження унікальності.

Таблиця 16. Відношення сутності ПРАКТИКА СТУДЕНТА

STUD_PRACTICE

Ім’я стовпця Тип Дов­жина Призначення Обмеження цілісності стовпців
SPID ціле число   Унікальний ID Первинний ключ
Duration ціле число   Термін проходження практики у днях Обов’язковий
In_date дата   Дата початку практики Обов’язковий
Out_date дата   Дата закінчен. практики Обов’язковий
Mark ціле число   Оцінка Факультативний, Приймає значен­ня у інтервалі 1 — 5
STID ціле число   Зв’язок з студентом Зовнішній ключ, що посилається на первин­ний ключ відношення STUDENT. Обов’язковий
TUFID ціле число   Зв’язок з керівником від факультету Зовнішній ключ, що посилається на первин­ний ключ відношення TUTOR. Обов’язковий
TUCID ціле число   Зв’язок з керівником від бази практики Зовнішній ключ, що посилається на первин­ний ключ відношення TUTOR. Обов’язковий
AGID ціле число   Зв’язок з договором, згідно з яким проходила практика Зовнішній ключ, що посилається на первин­ний ключ відношення AGREEMENT. Факультативний
PPID ціле число   Зв’язок з запланованою практикою Зовнішній ключ, що посилається на первин­ний ключ відношення PLAN_PRACTICE. Обов’язковий
Обмеження цілісності таблиці Сукупність стовпців (STID, PPID) має обмеження унікальності та обов’язковості.

Таблиця 17. Відношення сутності ЗВІТ

REPORT

Ім’я стовпця Тип Дов­жина Призначення Обмеження цілісності стовпців
REID ціле число   Унікальний ID Первинний ключ
Text строка 30КБ Текст звіту Обов’язковий
SPID ціле число   Зв’язок з практикою студента Зовнішній ключ, що посилається на первин­ний ключ відношення STUD_PRACTICE. Обов’язковий та унікальний

Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: