Наша совместная команда Banwar.org

Связаться с нами

  • (097) ?601-88-87
    (067) ?493-44-27
    (096) ?830-00-01

Статьи

НОУ ІНТУЇТ | лекція | Реляційна модель даних

  1. 4.8 Незалежні операції реляційної алгебри Для виділення незалежних операцій реляційної алгебри виділимо...
  2. 4.10 Приклади запитів
  3. 4.10.1 Встановлюємо WinRDBI
  4. 4.10.2 Схема scott
  5. 4.10.3 Позначення операцій
  6. 4.10.4 Приклади запитів
  7. приклади запитів

4.8 Незалежні операції реляційної алгебри

Для виділення незалежних операцій реляційної алгебри виділимо базовий набір властивостей операцій, так щоб всі особливості операцій відбивалися найбільш повно. Перерахуємо базисні властивості поняття "реляційна операція":

  • збільшення кількості атрибутів відносин;
  • зменшення кількості атрибутів відносин;
  • збереження кількості атрибутів відносин;
  • порівняння атрибутів;
  • робота з даними однотипних відносин;
  • зміна імен.

Зауважимо, що незалежність властивостей і повнота цієї системи властивостей не доведені.

Затвердження. Об'єднання, віднімання, декартовій твір, вибірка і проекція незалежні (примітивні) операції. Їх не можна висловити один через одного.

Покажемо це.

Справді, збільшують число атрибутів декартовій твір і з'єднання.

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

Порівнюють атрибути тільки селекція, що вибирає рядки, і приватна, засноване на виділенні групи рядків.

З даними декількох однотипних відносин можуть працювати тільки булеві операції. Тому виділяємо їх в окрему групу. Вибір групи рядків заснований на виборі рядка за умовою. Можна вважати незалежною більш просту операцію селекції.

Зміна імен виконує тільки операція перейменування.

Розберемося з булевими операціями: об'єднанням, перетином і різницею. Крім них зберігають кількість атрибутів відносини ще селекція і перетин. Але вони не мають теоретико-множинної природи. Так що виділення булевих операцій обгрунтовано.

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

Справді, перетин визначається через віднімання Справді, перетин визначається через віднімання   , А приватна через віднімання, декартовій твір і проекцію: , А приватна через віднімання, декартовій твір і проекцію:

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

Розберемося з трійкою - декартовій твір, природне і з'єднання. Операції з'єднання визначаються через операції декартового твори і вибірки.

Операції з'єднання визначаються через операції декартового твори і вибірки

Так що природно вважати незалежною, в деякому сенсі більш просту, операцію декартовій твір.

4.9 Визначення реляційної алгебри

позначимо:

- безліч атрибутів (універсум), - безліч атрибутів (універсум),

- безліч доменів, - безліч доменів,

- повна функція   :   ;  призначає домен кожному атрибуту, - повна функція : ; призначає домен кожному атрибуту,

- безліч всіх можливих схем відносин на   ,   -Є безліч відносин   зі схемами   , Відповідно, - безліч всіх можливих схем відносин на , -Є безліч відносин зі схемами , Відповідно,

-безліч бінарних відносин, визначених на доменах з   , Що містить, принаймні, відношення рівності і нерівності для кожного домена -безліч бінарних відносин, визначених на доменах з , Що містить, принаймні, відношення рівності і нерівності для кожного домена.

Визначення. Реляційної алгеброю над Визначення , , , , \ Tau, називається семимісний кортеж

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

Перелічимо основні особливості реляційної алгебри:

  • Алгебра будується на безлічі відносин з атрибутами.
  • Елементи даних (атрибути) типізовані (відносяться до одного домену).
  • Відносини можна з'єднувати. Зв'язків між відносинами, подібних розглянутим в "Модель сутність-зв'язок" , Не існує, так як за своєю природою зв'язку вимагають активності системи і тому не є алгебраїчною конструкцією.
  • Використовуються операції над множинами (об'єднання, перетин, віднімання, декартовій твір, приватне) і реляційні операції (вибірка (селекція), проекція, з'єднання, розподіл).
  • Для виконання деяких операцій необхідно забезпечити сумісність відносин по сигнатурі.
  • У деяких випадках операції вимагають перейменування атрибутів.
  • Вирази реляційної алгебри будуються на відносинах і повертають відносини же. Відносини-результати можна використовувати як аргументи в інших виразах.
  • Незалежність операцій. Операції з'єднання, перетин і розподіл можна виразити через інші реляційні операції. Операції об'єднання, віднімання, декартовій твір, вибірка, проекція не можна висловити один через одного.
  • Реляційна алгебра - це мова запитів. Висловити створення вихідних відносин, заповнити їх, змінити або видалити кортежі в цій алгебрі не можна.

4.10 Приклади запитів

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

4.10.1 Встановлюємо WinRDBI

Викачуємо файл дистрибутива WinRDBISetup-3.1.0.130 з сайту http://winrdbi.asu.edu/ і, клацнувши по ньому лівою кнопкою миші, інсталюємо WinRDBI. Беремо з сайту книги додаткову схему бази даних, що знаходиться в текстовому файлі scott.rdb. Розміщуємо цей файл або безпосередньо в область баз даних показану на малюнку 4.9 , Або в кореневу папку WinRDBI, що зберігає ці дані. На моїй машині це папка C: \ Program Files \ WinRDBI. Щоб завантажити схему scott.rdb, наберіть File> Open і виберіть шлях до файлу scott.rdb. Файли з розширенням .rdb зберігають бази даних. Спочатку є файл empTraming.rdb, і ми тільки що додали scott.rdb. Файл empTraining.alg зберігає набір запитів в реляційній алгебрі. В інших файлах з ім'ям erpTraining зберігаються запити в обчисленнях і SQL.


Мал.4.9.

Файли даних і запитів в WinRDBI

4.10.2 Схема scott

Розглянемо відношення employee ( малюнок 4.10 ), Що входить в схему erpTraining. Атрибути позначені іменами, які починаються часткою з малої літери, за якими слід ім'я типу, відокремлене знаком "/". Ці особливості пов'язані з тим, що WinRDBI написаний на мові Пролог.


Мал.4.10.

ставлення employee

Формат текстового файлу .rdb нескладний. Ви можете розібратися в ньому самостійно, прочитавши файли empTraining.rdb і scott.rdb за допомогою текстового редактора. Рядкові значення полягають в одинарні лапки.

У схемі scott ( малюнок 4.11 ) Задані відносини emp, dept, salgrade, описані на сайті книги.

Зверніть увагу на те, що стосовно emp з'явилися текстові значення 'null'. Справа в тому, що невизначених значень в реляційної лгебре не існує. Тому NULL був замінений текстової константою 'null', що не еквівалентної йому за змістом, а числові значення атрибута comm довелося замінити текстовими, уклавши їх в лапки.

4.10.3 Позначення операцій

Позначення операцій реляційної алгебри зведені в таблицю 4.1

-З'єднання і приватне не підтримуються -З'єднання і приватне не підтримуються. Їх необхідно висловлювати через інші операції. Виконайте наступну послідовність File> Open> empTraining.alg. У панелі, що з'явилася вивчіть зразки запитів реляційної алгебри. Зверніть увагу на те, що результат запиту -це тимчасове відношення, і на ньому, в свою чергу, можна виконувати запити. Якщо результат запиту названий, то після виконання запиту, утворене ставлення-відповідь зберігається і доступно для подальшої роботи.

4.10.4 Приклади запитів

Для створення запиту необхідно виконати наступну послідовність дій ( малюнок 4.13 ):

  1. Натиснути кнопку
  2. Вибрати Relational Algebra.
  3. Натиснути Ok.

У панелі, що з'явилася можна набирати текст запиту.

приклади запитів
  1. Видати прізвища і посади осіб, які отримують зарплату понад 1000. малюнок 4.14 .
    Мал. 4.14. Результат запиту в WinRDBI
  2. Видати список співробітників у вигляді відносини з атрибутами: empno, ename, job, dname. Запит: project empno, ename, job, dname (emp njoin dept);

Новости

Banwar.org
Наша совместная команда Banwar.org. Сайт казино "Пари Матч" теперь доступен для всех желающих, жаждущих волнения и азартных приключений.