Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Чичкань.docx
Скачиваний:
6
Добавлен:
01.05.2025
Размер:
2 Мб
Скачать
☆
      1. Лекція 7

      2. Формалізація реляційної моделі

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

Мета лекції: розглянути формалізований опис реляційної моделі і операцій маніпулювання даними як основи для використання математичних методів проектування баз даних і основи створення мов запитів до бази даних.

      1. 7.1. Формалізований опис відношень і схеми відношень

Як вже наголошувалося в п. 6.2.3, реляційна модель описує представлення даних у вигляді двовимірної таблиці, названої відношенням. Найменуваннями стовпців цієї таблиці слугують імена атрибутів. Розглянемо формалізований опис відповідних понять.

Нехай A1, A2 ..., An імена атрибутів. Кожному імені атрибуту Ai відповідає допустима множина значень, які може приймати атрибут Ai. Ця множина значень Di називається доменом атрибуту Ai, i=1,n. За визначенням, домени є непорожньою скінченною або зчисленною множиною. Уточнимо, що в теорії реляційних баз даних домен розглядається як множина значень одного (причому простого) типу даних. Поняттю домену Di відповідає множина значень, що стоять у стовпці Ai даної таблиці.

Схемою відношення R {A1, A2 ..., An} називається скінченна множина імен атрибутів {A1, A2 ..., An}, причому атрибут Ai набуває значення з множини Di (i=1, 2, ..., n), де n – арність відношення.

Поняттю "Схема відношення" відповідає опис структури двовимірної таблиці (імена стовпців і допустима множина значень).

Нехай

Відношенням r зі схемою R називається скінченна множина відображень {t1, t2 ..., tp} із множини R: {A1, A2 ..., An} у множину

таких, що tk(Ai)  Di, k=1,p; i=1,n.

Відображення tk називається k-м кортежем, n – розмірність кортежу.

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

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

Ключем відношення r зі схемою R називається мінімальна підмножина K = {Ai1, Ai2 ..., Aim}  {A1, A2 ..., An}, де {i1, i2 ...,im}  {1, 2, ..., n}, таке, що будь-які два різні кортежі t1, t2  r (t1  t2) не збігаються (не співпадають) по значеннях множини K = {Ai1, Ai2 ...,  Aim}.

Можливі випадки, коли відношення r має декілька ключів. Такі ключі називаються потенційними (можливими). Вибраний з них ключ для ідентифікації кортежів називається первинним ключем. Таким чином, досить знати значення кортежу на множині K, щоб однозначно його ідентифікувати. Ключ використовується для представлення зв'язків між відношеннями. З цією метою первинний ключ одного відношення включається в структуру (набір атрибутів) пов'язаного з ним відношення. Для другого відношення відповідний ключ називається зовнішнім ключем.

Сукупність схем відношень, використовуваних для представлення концептуальної моделі, називається схемою реляційної бази даних (реляційною моделлю даних). Поточні значення відповідних відношень називаються реляційною базою даних.

Випишемо реляційну модель даних прикладу з попередньої лекції (див. мал. 6.3). Введемо позначення атрибутів усіх відповідних сутностей. Нехай A1 – код студента, A2 – прізвище, A3 – дата народження, A4 – місце народження, A5 – номер факультету, A6 – назва факультету, A7 – номер спеціальності, A8 – назва спеціальності. Позначимо схему відношення СТУДЕНТ як R1, ФАКУЛЬТЕТ як R2, СПЕЦІАЛЬНІСТЬ як R3, СТУДЕНТ ВЧИТЬСЯ НА ФАКУЛЬТЕТІ як R4, СТУДЕНТ ВЧИТЬСЯ ПО СПЕЦІАЛЬНОСТІ як R5, НА ФАКУЛЬТЕТІ Є СПЕЦІАЛЬНОСТІ як R6.

Тоді реляційна модель відповідного прикладу описується наступною сукупністю схем відношень:

R1(A1, A2, A3, A4)

R2(A5, A6)

R3(A7, A8)

R4(A1, A5)

R5(A1, A7)

R6(A5, A7)

Нагадаємо, що поняття "Схема відношення" відповідає опису структури таблиці. Таблиця із заповненими значеннями (заповненими рядками) відповідає поняттю "відношення". Для цього прикладу відношення, що відповідають вищезгаданим схемам відношень, позначатимемо

r1, r2, r3, r4, r5, r6

Відзначимо наступні властивості відношення:

  1. Відношення має ім'я, яке відрізняється від імен всіх інших відношень.

  2. Кожне значення елементів кортежів представляється простим (атомарним) типом даних.

  3. Кожен атрибут має унікальне ім'я.

  4. Значення всіх атрибутів є атомарними (неподільними). Це випливає з визначення домену як множини значень простого типу даних, тобто серед значень домену не можуть міститися множини.

  5. Порядок розгляду атрибутів у (відношенні) схемі відношення немає значення, оскільки для посилання на значення атрибуту в кортежі відношення завжди використовується ім'я атрибуту.

  6. Порядок розгляду кортежів у відношенні не має значення, оскільки відношення є множиною кортежів, а елементи множини, за визначенням теорії множин, неупорядковані.