Здавалка
Главная | Обратная связь

Маніпулювання реляційними даними



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

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

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

Усі ці механізми володіють однією важливою властивістю: вони замкнуті щодо поняття відношення. Це означає, що вирази реляційної алгебри і формули реляційного числення визначаються над відносинами реляційних БД і результатом обчислення також є відношення. У результаті будь-який вираз чи формула можуть інтерпретуватися як відношення, що дозволяє використовувати їх в інших виразах чи формулах.

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

Відомо, що механізми реляційної алгебри і реляційного числення еквівалентні, тобто для будь-якого припустимого виразу реляційної алгебри можна побудувати еквівалентну (тобто даючу такий же результат) формулу реляційного числення і навпаки. Чому ж у реляційної моделі даних присутні обидва ці механізму?

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

Оскільки механізми реляційної алгебри і реляційного числення еквівалентні, то в конкретній ситуації для перевірки ступеня реляційності деякої мови БД можна користатися кожним з цих механізмів.

Помітимо, що вкрай рідко алгебра чи числення приймаються як повну основу якої-небудь мови БД. Звичайно (як, наприклад, у випадку мови SQL) мова ґрунтується на деяке суміші алгебраїчних і логічних конструкцій. Проте, знання алгебраїчних і логічних основ мов баз даних часто буває корисно на практиці.







©2015 arhivinfo.ru Все права принадлежат авторам размещенных материалов.