Короткі теоретичні відомості. про виконання лабораторної роботи №1
ЗВІТ
про виконання лабораторної роботи №1
на тему:
“Створення таблиць засобами СКБД MS Access”
Виконав:
Прийняв:
Львів 2015
Мета роботи
Ознайомитися та оволодіти інструментом уніфікованого представлення даних - моделлю "сутність-зв’язок”
Короткі теоретичні відомості
Будь-який фрагмент предметної області може бути представлений як множина сутностей, між якими існує певна множина зв'язків.
ER-діаграма предметної області представляється множиною сутностей, атрибутів та зв’язків. Елементи кожної з цих множин представляються вузлами графа для яких ми використовуємо спеціальні форми для визначення їхнього виду:
Приклад 1.1На Рис.2.1 представлена ER-діаграма, яка зображає просту базу даних про працівників. Набори сутностей - це Працівник, Посада і Відділ.
Рис. 2.1Діаграма “сутність-зв’язок” для бази даних працівників
Визначення 1.1 Сутність (entity) є безліччю множин реальних або абстрактних об'єктів (людей, подій, станів, ідей, предметів тощо), що володіють загальними атрибутами або характеристиками. Будь-який об'єкт системи може бути представлений лише однією сутністю, яка повинна бути унікально ідентифікована. При цьому ім'я сутності повинне відображати тип або клас об'єкту, а не його конкретний екземпляр (наприклад, МІСТО, а не ЛЬВІВ).
Визначення 1.2 Набір сутностей (entity set) - множина сутностей одного типу (володіють однаковими властивостями). Приклади: всі люди, підприємства, свята тощо. Набори сутностей не обов'язково повинні не перетинатися. Наприклад, сутність, що належить до набору ЧОЛОВІКИ, також належить набору ЛЮДИ.
Сутність фактично представляє з себе безліч атрибутів, які описують властивості всіх членів даного набору сутностей.
Визначення 1.3 Кількість сутностей, які можна асоціювати через набір зв'язків з іншим сутностями, називають степінню зв'язку.
Розгляд степенів особливо корисно для бінарних зв'язків. Можуть існувати наступні степені бінарних зв'язків:
· один до одного (позначається 1:1). Це означає, що в такому зв'язку сутності з однією роллю завжди відповідає не більше однієї сутності з іншою роллю. У розглянутому прикладі це зв'язок "керує", оскільки у кожному відділі може бути лише один начальник, а співробітник може керувати лише в одному відділі. Даний факт представлений на Рис. 2.2, де прямокутники позначають сутності, а ромб - зв'язок. Оскільки степінь зв'язку для кожної сутності дорівнює 1, то вони з'єднуються однією лінією.
Рис. 2.2Приклад графічної побудови зв’язку один-до-одного
Іншою важливою характеристикою зв'язку крім його степені є клас належностісутностей які до нього входять. Оскільки у кожному відділі обов'язково повинен бути керівник, то кожній сутності "ВІДДІЛ" неодмінно повинна відповідати сутність "СПІВРОБІТНИК". Проте, не кожний співробітник є керівником відділу, відповідно у даному зв'язку не кожна сутність "СПІВРОБІТНИК" має асоційовану з нею сутність "ВІДДІЛ".
Таким чином, говорять, що сутність "СПІВРОБІТНИК" має обов'язковий клас належності (цей факт є також вказівкою інтервалу кількості можливих входжень сутності у зв'язок, у даному випадку це 1,1), а сутність "ВІДДІЛ" має необов'язковий клас належності (0,1). Тепер даний зв'язок ми можемо описати як 0,1:1,1. Надалі клас належності бінарних зв'язків степені 1 будемо позначати наступним чином:
Рис. 2.3Приклад позначення бінарних зв’язків степені 1
· один до багатьох (1:n). У даному випадку сутності з однією роллю може відповідати будь-яка кількість сутностей з іншою роллю. Таким є зв'язок ВІДДІЛ-СПІВРОБІТНИК. У кожному відділі може працювати довільна кількість співробітників, але співробітник може працювати лише в одному відділі. Графічно степінь зв'язку n відображається "деревоподібною” лінією, як це зроблено на Рис 2.4.
Рис. 2.4Приклад графічної побудови зв’язку один-до-багатьох
Даний рисунок додатково ілюструє той факт, що між двома сутностями може бути визначено декілька наборів зв'язків.
Тут також необхідно враховувати клас належності сутностей. Кожний співробітник повинен працювати у якому-небудь відділі, але не обов’язково кожний відділ (наприклад, щойно сформований) повинен включати хоча б одного співробітника. Тому сутність "ВІДДІЛ" має обов'язковий, а сутність "СПІВРОБІТНИК" необов'язковий класи належності. Степінь зв’язку бінарних зв'язків степені n будемо позначати наступним чином:
Рис. 2.5Приклад позначення бінарних зв’язків степені n
· багато до одного (n:1). Цей зв'язок аналогічний відображенню 1:n. Припустимо, що представлення нами підприємство будує свою діяльність на підставі контрактів, що підприємство, яке ми розглядаємо, будує свою діяльність на основі контрактів, які укладаються із замовниками. Цей факт відображається у моделі "сутність-зв'язок” (Рис.2.5) за допомогою зв'язку КОНТРАКТ-замовник, який об'єднує сутності КОНТРАКТ(НОМЕР, ТЕРМІН_ВИКОНАННЯ, СУМА) і ЗАМОВНИК(НАЗВА, АДРЕСА). Оскільки з одним замовником може бути укладено більше одного контракту, то зв'язок КОНТРАКТ-замовник між цими сутностями матиме степінь n:1.
Рис. 2.5Приклад графічної побудови зв’язку багато-до-одного
У даному випадку, по представлення очевидних міркуваннях (кожний контракт укладений представлення конкретним замовником, а кожний замовник має хоча б один контракт, інакше він не був би таким), кожне представлення має обов'язковий клас приналежності.
· багато до багатьох (n:n). У цьому випадку кожне з асоційованих сутностей може бути представлена будь-якою кількістю екземплярів. Нехай на підприємстві для виконання кожного контракту створюється робоча група, у яку входять співробітники різних відділів. Оскільки кожний співробітник може входити в кілька (у тому числі і в жодну) робочих груп, а кожна група повинна включати не менше одного співробітника, то зв'язок між сутностями СПІВРОБІТНИК і РОБОЧА_ГРУПА має степінь n:n (Рис.2.6.).
Рис. 2.6Приклад графічної побудови зв’язку багато -до-багатьох
Завдання
Накреслити ER-діаграму і скласти відношення для баз даних (БД) «Авіакомпанія».
Авіакомпанія обслуговує пасажирів, інформація про пасажирів містить: ім’я, адресу, № телефону; Інформація про рейси містить: № рейсу, час вильоту, аеропорт вильоту, аеропорт призначення, час прибуття; Інформація про персонал містить: ім’я, адресу, заробітню плату, табельний №; Окремо міститься інформація про пілотів, інформація містить те саме що і персонал, крім того льотний стаж, типи літаків на яких літав пілот. Інформація про літаки містить модель літака, фірму-виробник, порядковий номер літака, час експлуатації, останній час техогляду, недоліки при техогляді, наступний термін техогляду.
Результат виконання
Висновок
На цій лабораторній роботі я ознайомився та оволодів інструментом уніфікованого представлення даних – моделлю «сутність-зв’язок». Також накреслив і склав відношення для баз даних «Авіакомпанія».