Главная страница
Навигация по странице:

  • Кортеж – набір іменованих значень даного типу.

  • 14.5. Фундаментальні властивості відношень

  • 14.6. Базисні засоби маніпулювання реляційними даними

  • Конкретна мова маніпулювання реляційною БД називається реля

  • 14.7. Запис SQL-операторів

  • Таблиця 14.1 Символ Позначення ::= Дорівнює за визначенням | Необхідність вибору одного з декількох наведених значень

  • 14.8. Засоби маніпулювання відношеннями

  • 14.9. Загальна інтерпретація реляційних операцій

  • 2. Перетинання відношень

  • 3. Різність відношень R

  • Зчепленням, або конкатенацією, кортежів c = < c

  • 14.10. Спеціальні операції реляційної алгебри 5. Операція обмеження, фільтрація, горизонтальний вибір

  • Зацерковний В.І. та ін. ГІС та бази даних. І бази даних


    Скачать 31.1 Mb.
    НазваниеІ бази даних
    АнкорЗацерковний В.І. та ін. ГІС та бази даних.pdf
    Дата06.02.2018
    Размер31.1 Mb.
    Формат файлаpdf
    Имя файлаЗацерковний В.І. та ін. ГІС та бази даних.pdf
    ТипКнига
    #15245
    страница43 из 49
    1   ...   39   40   41   42   43   44   45   46   ...   49
    Домен – обмежена підмножина значень даного типу.
    Домен має таке семантичне навантаження: дані вважаються порів- нюваними тільки у тому разі, коли вони відносяться до одного домену.
    Кортеж – це множина пар {ім’я атрибута, значення}, яка містить одне входження кожного імені атрибута, що належить схемі відношення.
    Кортеж – набір іменованих значень даного типу.
    Типи даних– у сучасних реляційних БД припускається збереження символьних, числових даних, бітових рядків, спеціалізованих числових даних, спеціальних темпоральних і абстрактних даних.
    Атрибут – це входження домену у відношення.
    Будь-який об’єкт реального світу характеризується певною множиною характеристик (атрибутів
    1
    , А
    2
    , ..., А
    n
    )). Ця характеристика має ім’я атрибута
    1
    , А
    2
    , ..., А
    n
    ) і множину допустимих значень – доменів.
    Тоді таблиця являє собою відношення, в якому кожний рядок є множиною значень, взятих по одному з домену кожного імені атрибута.
    Рядки відношень називаються кортежами і мають арність, яка дорівнює кількості атрибутів.
    Кортежі відношень утворюють множину, оскільки рядки не дублюються.
    Схемою відношення
    R
    S називається скінченна множина імен атрибутів
    1

    2
    ,...,А
    n
    ):


    j
    i
    n
    R
    D
    A
    A
    A
    A
    S


    ,
    ,...,
    ,
    2 1
    Якщо атрибути приймають значення з одного і того ж домену, то вони називаються θ - порівнюваними, де θ – множина припустимих операцій порівняння, заданих для даного домену. Наприклад, якщо домен містить числові дані, то для нього припустимими є всі операції порів- няння. Отже, можна записати θ = {=, <, >, > =, = <, < >}.

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


    n
    R
    A
    A
    A
    S
    ,...,
    ,
    2 1
    1

    – схема відношення R
    1
    ,


    n
    R
    B
    B
    B
    S
    ,...,
    ,
    2 1
    2

    – схема відношення R
    2
    після впорядкування.
    У реляційній моделі, як і в теоретико-графовій, підтримуються ієрар- хічні зв’язки між відношеннями. В кожному зв’язку одне відношення може виступати як основне, а інше виступає в ролі підпорядкованого. Це означає, що один кортеж основного відношення може бути пов’язаний з декількома кортежами підпорядкованого відношення. Для підтримки цих зв’язків, обидва відношення повинні містити набори атрибутів, за якими вони пов’язуються.
    В основному відношенні це первинний ключ відношень, який являє собою набір атрибутів, значення яких однозначно визначають кортеж основного відношення. Для кожного відношення принаймні повний набір його атрибутів має цю властивість. Однак при формальному визначенні первинного ключа вимагається забезпечення його мінімальності, тобто в набір атрибутів первинного ключа не повинні входити такі атрибути, які можна відкинути без завдання шкоди для основної властивості – однозначно визначати кортеж.
    У підпорядкованому відношенні для моделювання зв’язку повинен бути присутній набір атрибутів, який відповідає первинному ключу основ- ного відношення, однак тут цей набір атрибутів уже є вторинним ключем, тобто він визначає множину кортежів підпорядкованого відношення, які пов’язані тільки з одним кортежем основного відношення. Даний набір атрибутів у підпорядкованому відношенні називається зовнішнім ключем.
    14.5. Фундаментальні властивості відношень
    1. Відсутність кортежів-дублікатів. Випливає з визначення відношень як множини кортежів.
    2. Відсутність упорядкованості кортежів. Дає додаткову гнучкість при збереженні БД у зовнішній пам’яті і при виконанні запитів до БД.
    3. Відсутність упорядкованості атрибутів.
    4. Атомарність значень атрибутів. Серед значень домену не може міститись множина значень.

    432
    Основні правила відношень:
    1. Кожне з відношень складається з кортежів і має унікальне ім’я.
    2. Рядки мають фіксовану кількість полів та значень, тобто в кожній позиції відношення на перетинанні кортежу й атрибута завжди є одне значення або нічого немає.
    3. Кортежі обов’язково відрізняються один від одного хоча б одним значенням, що дозволяє однозначно ідентифікувати будь-який кортеж такого відношення.
    4. Атрибутам однозначно привласнюються імена, і в кожному з них розміщуються однорідні значення даних.
    5. Повний інформаційний вміст БД подається у вигляді явних значень даних, і такий метод подання є єдиним. Зокрема, не існує будь-яких спеціальних зв’язків або показників, що з’єднують одну таблицю з іншою.
    6. При виконанні операцій з відношенням його кортежі й атрибути можна обробляти в будь-якому порядку безвідносно до їх інформацій- ного вмісту.
    14.6. Базисні засоби маніпулювання реляційними даними
    Базисні засоби маніпулювання реляційними даними визначають два механізми:
    1) реляційна алгебра, яка заснована на теорії множин;
    2) реляційне числення, яке ґрунтується на математичній логіці, точ- ніше на обчисленні предикатів першого порядку. Зазвичай розглядають два види обчислень: обчислення доменів і обчислення предикатів (пре-
    дикат – це вислів, у який можна підставляти аргументи).
    Ці механізми мають важливу властивість – вони замкнені відносно поняття відношення. Це означає, що вираз реляційної алгебри і формули реляційного числення визначають над відношенням реляційної БД і результатом обчислення також є відношення. В результаті будь-який вираз або формула можуть інтерпретуватись як відношення, що дозволяє
    їх використовувати в інших виразах або формулах.
    Реляційна алгебра має велику вразливу потужність, тобто дуже складні запити до БД можуть бути виражені за допомогою одного виразу реляційної алгебри або однієї формули реляційного числення.
    Конкретна мова маніпулювання реляційною БД називається реля-
    ційно повною, якщо будь-який запит, що здійснюється за допомогою
    одного виразу реляційної алгебри або однієї формули реляційного чис-
    лення, може бути виражений за допомогою одного оператора цієї мови.
    Механізми реляційної алгебри і реляційного числення різняться рівнем процедурності.

    433
    Вирази реляційної алгебри будуються на основі алгебраїчних опе- рацій високого рівня, і подібно до того, як інтерпретуються арифметичні
    і логічні вирази реляційної алгебри, вони так само мають процедурну
    інтерпретацію. Для формули реляційного числення однозначна інтерпре- тація, зазвичай, відсутня.
    Формула ж тільки встановлює умови, які повинні задовольняти кортежі результуючого відношення. Тому мови реляційного числення є менш процедурними або декларативними.
    Оскільки механізми реляційної алгебри і реляційного числення є еквівалентними, то для перевірки ступеня реляційності певної мови БД можна скористатися будь-яким з цих механізмів. Зазвичай мова ґрунту-
    ється на суміші алгебраїчних і логічних конструкцій, наприклад SQL.
    14.7. Запис SQL-операторів
    Для успішного вивчення мови SQL необхідно навести короткий опис структури SQL-операторів і нотації, що використовуються для визначення формату різних конструкцій мови. Оператор SQL складається
    із зарезервованих слів, а також зі слів, що визначаються користувачем.
    Зарезервовані слова є постійною частиною мови SQL і мають фік- соване значення. Їх треба записувати точнісінько так, як це встановлено, не можна розбивати на частини для переносу з одного рядка на інший.
    Слова, що визначаються користувачем, задаються ним самим
    (відповідно до синтаксичних правил) і становлять ідентифікатори або
    імена різних об’єктів БД. Слова в операторі також розташовуються відповідно до встановлених синтаксичних правил.
    Ідентифікатори мови SQL призначені для позначення об’єктів у БД і є
    іменами таблиць, представлень, стовпчик та інших об’єктів бази даних.
    Символи, які можуть використовуватись у створюваних користувачем
    ідентифікаторах мови SQL, повинні бути визначені як набір символів.
    Стандарт SQL задає набір символів, який використовуються за замовчуванням. Він включає рядкові і прописні літери латинського алфавіту (A–Z, a–z), цифри (0–9) і символ підкреслювання (_). На формат
    ідентифікатора накладаються такі обмеження:
    – ідентифікатор може мати довжину до 128 символів;
    – ідентифікатор повинен починатись з букви;
    – ідентифікатор не може містити проміжки.
    Приклад запису:
    <ідентифікатор>::=<буква>
    {<буква>|<цифра>}[...n]

    434
    Більшість компонентів мови не чутливі до регістру. Оскільки в мові
    SQL вільний формат, окремі SQL-оператори та їх послідовності будуть мати більшу читабельність при використанні відступів і вирівнювання.
    Мова, в термінах якої даються описи мови SQL, називається метамо- вою. Синтаксичні визначення зазвичай задають за допомогою спеціальної металінгвістичної символіки, яка називається формулами Бекуса–Науера
    (БНФ). Великі літери використовуються для запису зарезервованих слів.
    Малі літери використовуються для запису слів, що визначаються користу- вачем. Використовувані в нотації БНФ символи і їх позначення представлено в табл. 14.1.
    Таблиця 14.1
    Символ
    Позначення
    ::=
    Дорівнює за визначенням
    |
    Необхідність вибору одного з декількох наведених значень
    <…>
    Опис за допомогою метамови структури мови
    {…}
    Обов’язковий вибір певної конструкції зі списку
    […]
    Необов’язковий вибір певної конструкції зі списку
    [,…n]
    Необов’язкова можливість повторення конструкції від нуля до декількох разів
    14.8. Засоби маніпулювання відношеннями
    Основна ідея реляційної алгебри – засоби маніпулювання відношен- нями можуть ґрунтуватись на традиційних теоретико-множинних опера- ціях, доповнених певними спеціальними операціями, які є специфічними для БД.
    Існує декілька підходів до визначення реляційної алгебри. В почат- ковому варіанті набір основних алгебраїчних операцій дорівнює восьми, які поділяються на теоретико-множинні операції та спеціальні реляційні операції.
    До першого класу входять:
    1) об’єднання відношень;
    2) перетинання відношень;
    3) різність відношень;
    4) прямий добуток відношень.
    До другого класу входять:
    5) обмеження відношень;
    6) проекція відношень;
    7) з’єднання відношень;
    8) ділення відношень.

    435
    Крім того, до складу алгебри включається операція присвоювання, яка дозволяє зберегти в БД результати обчислень алгебраїчних виразів, і
    операція перейменування атрибутів, яка надає можливість коректно сформулювати заголовок результуючого відношення.
    14.9. Загальна інтерпретація реляційних операцій
    Майже всі операції набору мають наступну інтерпретацію:
    1. При виконанні операцій об’єднання 2-х відношень здійснюється відношення, яке включає всі кортежі, що входять в одне з відношень операндів.
    2. Операція перетинання 2-х відношень здійснює відношення, які включає всі кортежі, що входять в обидва відношення-операнди.
    3. Відношення, які є різницею 2-х відношень включають всі кор- тежі, що входять у відношення – перший операнд – такі, що жоден з них не входить у відношення, які є другим операндом.
    4. При виконанні прямого добутку 2-х відношень здійснюється від- ношення, кортежі якого є конкатенацією (зчепленням) кортежів першого
    і другого операндів.
    5. Результатом обмеження відношень за певною умовою є відношен- ня, що включає кортежі відношення-операнда, які задовольняють цю умову.
    6. При виконанні проекції відношення на заданий набір його атрибутів здійснюється відношення, кортежі якого виконуються шляхом взяття відповідних значень з кортежів відношення-операнда.
    7. При з’єднанні 2-х відношень за певною умовою утворюється результуюче відношення, кортежі якого є конкатенацією 1-го і 2-го відношень і задовольняють цю умову.
    8. В операції реляційного ділення два операнди: бінарне й унарне відношення. Результуюче відношення складається з атрибутивних кор- тежів, що включають значення першого атрибута кортежів 1-го операнда таких, що множина значень 2-го атрибута (при фіксованому значенні 1-го атрибута) збігається з множиною відношень 2-го операнда.
    9. Операція перейменування здійснює відношення, тіло якого співпадає з тілом операнда, але імена атрибутів змінені.
    10. Операція присвоювання дозволяє зберегти результат обчис- лення реляційного виразу в існуючому відношенні БД.
    Оскільки результатом будь-якої операції, крім операції присвоюван- ня, є певні відношення, можна утворювати реляційні вирази, в яких замість відношення-операнда деякі реляційні операції перебувають вкла- деними в реляційний вираз:


    C
    B
    A
    B
    A


     ,
    . Кожне відношення характе- ризується схемою і набором кортежів. Заголовок відношення представляє

    436
    собою множину пар (ім’я атрибута і домену), отже, домени атрибутів ре- зультуючого відношення однозначно визначаються доменами відношень- операндів. Однак, іноді виникає конфлікт імен атрибутів. Для розв’язання цього конфлікту до складу операцій реляційної алгебри і введено операцію перейменування. Її слід застосовувати в будь-якому випадку, коли виникає конфлікт іменування атрибутів у відношеннях-операндах однієї реляційної операції. Тоді до одного з операндів спочатку застосовується операція перейменування, а потім виконується основна операція.
    1. Об’єднання відношень – називається відношення, яке містить множину кортежів, що належать або 1-му, або 2-му вихідним відношен- ням, або двом відношенням одночасно.
    Нехай задані 2 відношення: R
    1
    ={r
    1
    R
    2
    ={r
    2
    }, де r
    1
    і r
    2
    відповідно кортежі відношень R
    1
    і R
    2
    , тоді об’єднання:


    2 1
    2 1
    3
    R
    r
    R
    r
    r
    R
    R
    R






    , де r
    – кортеж нового відношення,

    – операція логічного додавання АБО (ИЛИ)
    2. Перетинання відношень – відношення, яке містить множину кортежів, що належать одночасно і 1-му, і 2-му відношенням.


    2 1
    2 1
    4
    R
    r
    R
    r
    r
    R
    R
    R






    , де

    – операція логічного множення І (И).
    3. Різність відношень R
    1
    і R
    2
    – відношення, що містить множину кортежів, належить R
    1
    і не належить R
    2


    2 1
    2 1
    5
    \
    R
    r
    R
    r
    r
    R
    R
    R





    ,


    2 1
    1 2
    6
    \
    R
    r
    R
    r
    r
    R
    R
    R





    Перші дві операції є комутативними, тобто результат операції не залежить від порядку аргументів в операції. Операція ж різниці є принци- пово несиметричною, тобто результат буде різним для різного порядку аргументів.
    4. Прямим добутком відношення R
    1
    в ступені n зі схеми


    n
    R
    A
    A
    A
    S
    ,...,
    ,
    2 1
    1

    і відношення R
    2
    ступеня m зі схеми


    m
    R
    B
    B
    B
    S
    ,...,
    ,
    2 1
    2


    437
    називається відношення
    R
    3
    ступеня
    n+m зі схеми


    m
    n
    R
    B
    B
    B
    A
    A
    A
    S
    ,...,
    ,
    ,
    ,...,
    ,
    2 1
    2 1
    3

    , що містить кортежі, отримані зчепленням
    (конкатенацією) кожного кортежу r відношення R
    1
    з кожним кортежем r відношення R
    2
    , тобто R
    1
    = {r}, R
    2
    = {q}, тоді




    2 1
    2 1
    ;
    R
    q
    R
    r
    q
    r
    R
    R





    Зчепленням, або конкатенацією, кортежів c = < c
    1
    , c
    2
    ,..., c
    n
    > і
    q = < q
    1
    , q
    2
    ,...,q
    m
    > називається кортеж, отриманий додаванням
    значень другого в кінець першого.
    Зчеплення позначається (c, q).
    Операцію добутку з урахуванням можливості перестановки атрибутів у відношенні можна вважати симетричною. Дуже часто операція добутку використовується для одержання певного універсуму, тобто відношення, яке характеризує всі можливі комбінації між елементами окремих множин, однак самостійного значення результат виконання операцій не має, він бере участь у подальшій обробці.
    14.10. Спеціальні операції реляційної алгебри
    5. Операція обмеження, фільтрація, горизонтальний вибір
    Для визначення цієї операції необхідно ввести додаткове позначення.
    Нехай α – булевський вираз, складений з термів порівняння за допомогою зв’язок І (

    ), АБО (

    ) і НІ ( – ), і, можливо, дужок. Як терми порівняння допускаються:
    1   ...   39   40   41   42   43   44   45   46   ...   49


    написать администратору сайта