- •Первинні та зовнішні ключі. Принцип побудови зв’язків між таблицями.
- •Побудова схеми даних. Взаємозв’язок таблиць бд. Забезпечення цілісності даних. Приклади.
- •3. Розробка форм для завантаження, перегляду та корегування даних. Основні етапи розробки форм та завантаження бд. Побудова інтерфейсу користувача.
- •4.!Побудова інформаційно – логічної моделі по.
- •6.! Основи конструювання звітів. Побудова звітів. Приклади.
- •Основи побудови і складання фінансової звітності
- •7.!Захист даних в бд загального користування
- •8.! Періоди розробки інформаційних систем (проектування, програмна реалізація, експлуатація).
- •10.!Запити як основна форма роботи з бд. Запити qbe та запити sql. Приклади
- •9.! Обробка даних в режимі таблиці та форми. Пошук записів. Відбір записів за допомогою фільтру. Приклади
- •11.! Етапи проектування та побудови бд
- •13.!Основи розробки запитів. Призначення та види запитів. Приклади
- •14.!Типи відношень реляційних таблиць. Графічне представлення цих типів у вигляді er-схеми.
- •15.!Засоби автоматизації проектування. Case – засоби та case - системи.
- •16. Основні операції над відношеннями. Мова реляційної алгебри та мова реляційного числення.
- •17. Проектування бд з використанням нормальних форм. Перша та друга нормальні форми.
- •2. Типи таблиць і ключів в реляційних базах даних
- •3. Схематичні моделі даних
- •4. Нормалізація даних в реляційній моделі
- •4.1. Перша нормальна форма
- •4.2. Друга нормальна форма
- •4.3. Третя нормальна форма
- •18. Моделювання даних по. Зовнішня, концептуальна та внутрішня моделі даних
- •19. Нормалізація даних в бд. Третя нормальна форми та бк нф
- •20. Реляційна модель даних. Реляційна бд. Термінологія рбд
- •21. Логічна модель даних предметної області та фізичне представлення її в пам’яті пеом.
- •23. Статичні та динамічні властивості об’єктів бд. Правила визначення елементів даних та їх атрибутів. Поняття ключових атрибутів.
- •24.Бази даних, субд. Поняття банку даних. Визначення. Властивості. Приклади
- •25. Поняття предметної області. Об’єкти. Атрибути. Принципи проектування бд
16. Основні операції над відношеннями. Мова реляційної алгебри та мова реляційного числення.
Розглядаються спеціальні операції над відносинами: вибірка, проекція, декартовій твір, з'єднання. Наводяться різні типи з'єднань: з'єднання по еквівалентності, природне, зовнішнє з'єднання, полусоедіненіе. Операції над відносинами ілюструються на прикладах оператора SELECT. Розглядаються приклади вибору даних з декількох таблиць. Наводиться об'єднання результатів декількох запитів.
Розглянемо основні операції над відносинами, які можуть представляти інтерес з точки зору отримання даних з реляційних таблиць. Це об'єднання, перетин, різниця, розширене декартовій твір відносин, а також спеціальні операції над відносинами: вибірка, проекція і з'єднання.
Для ілюстрації теоретико-множинних операцій над відносинами введемо абстрактні відносини (таблиці) з деякими атрибутами (полями).
Операції вибірки і проекції є унарними, оскільки вони працюють з одним ставленням.
Операція вибірки
Операція вибірки - побудова горизонтального підмножини, тобто підмножини кортежів, що володіють заданими властивостями.
Операція вибірки працює з одним ставленням R і визначає результуюче відношення, яке містить тільки ті кортежі (рядки) відносини R, які задовольняють заданій умові F (предикату).
σF (R) або σпредікат (R).
Приклад 5.1. Операція вибірки в SQL.
Вибірка σ (a2 = 1) (R) = {(a, 1), (b, 1)} записується таким чином:
SELECT a1, a2
FROM R
WHERE a2 = 1
Приклад 5.1. Операція вибірки в SQL.
Операція проекції
Операція проекції - побудова вертикального підмножини відносини, тобто підмножини кортежів, одержуваного вибором одних і виключенням інших атрибутів.
Операція проекції працює з одним ставленням R і визначає нове ставлення, яке містить вертикальне підмножина відносини R, створюване за допомогою вилучення значень зазначених атрибутів і виключення з результату рядків-дублікатів.
Πa1, a2, ... an (R)
Приклад 5.2. Операція проекції в SQL.
Проекція Πb2 (S) = {(h), (g)) записується таким чином:
SELECT b2
FROM S
Приклад 5.2. Операція проекції в SQL.
До основних операцій над відносинами відноситься декартовій твір.
Декартовій твір
Декартовій твір RxS двох відносин (двох таблиць) визначає нове ставлення - результат конкатенації (тобто зчеплення) кожного кортежу (кожного запису) з відношення R з кожним кортежем (кожним записом) з відношення S.
RxS = {(a, 1, 1, h), (a, 2, 1, h),
(B, 1, 1, h), ... }
SELECT R.a1, R.a2, S.b1, S.b2
FROM R, S
Приклад 5.1. Декартовій твір відносин в SQL
Мова реляційної алгебри та мова реляційного числення.
Реляційна модель даних є основною в сучасних СУБД. Мови представлення структурних елементів моделі та маніпулювання ними є невід’ємною складовою будь-якої моделі даних. В реляційній моделі даних (РМД) мовами маніпулювання даними є, зокрема, мова реляційної алгебри (РА) і мова реляційного числення (РЧ) [1]. Вони, як і структура РМД, побудовані на формальному математичному базисі і послужили теоретичним підґрунтям для створення мови SQL. Але, на відміну від SQL, вони не підтримуються сучасними СУБД, тому засвоєння матеріалу з мов РА і РЧ не є активним, тобто вони вивчаються, в основному, на лекційних заняттях. Під час виконання лабораторних робіт студентам, як правило, пропонується реалізація операцій РА засобами мови SQL [2,3]. Це, призводить до того, що знижуються рівень засвоєння теоретичної основи реляційних баз даних. Оскільки студенти з ком’ютерних напрямів освіти мають відчувати внутрішні механізми операцій в РМД, тому створення засобів та інтелектуальних інформаційних технологій підтримки активного засвоення реляційної алгебри та реляційного числення студентами комп’ютерних напрямів освіти є актуальною.
Огляд публікацій та аналіз невирішених питань. Одним із підходів до розв’язання наведеної задачі є створення інтерпретаторів мов реляційної алгебри і реляційного числення для виконання лабораторних робіт з організації баз даних. В [1] наведена інформація, що у перших реляційних СУБД мовами маніпулювання як раз і були мові РА або РЧ, але з часом „стандартною” стала мова SQL, за допомогою якої виконуються лабораторні роботи з опанування РА і РЧ [2,3], знання яких необхідні при оптимізації схем виконання запитів, реплікацій, тощо. в розподілени. Основна ідея проекту полягає в доповненні реляційної СУБД такими засобами маніпулювання даними, як мови реляційної алгебри і реляційного числення із можливістю взаємного перетворення, а також перетворенням у скрипти мови SQL та навпаки. Основні проблеми, що потребують вирішення в процесі роботи, пов’язані із забезпеченням взаємодії між різними мовами маніпулювання даними, тому що інтерпретатори мов РА і РЧ будуть реалізуються програмними модулями, а SQL є „внутрішньою” мовою СУБД. Оскільки у більшості сучасних СКБД діагностика помилок в SQL - програмах не розвинута, то потрібно буде розробити розвинуті засоби виявлення помилок граматичного розбору як для РА і РЧ, так і для SQL-коду.
