- •Передумови виникнення програмної інженерії.
- •Основні принципи програмної інженерії.
- •Життєвий цикл програмного забезпечення.
- •Роль і місце інформаційної інженерії у програмній.
- •Призначення і основні компоненти середовища бази даних.
- •7. Системи управління базами даних (субд).
- •8. Реляційна модель даних
- •9. Мова маніпулювання даними для реляційної моделі.
- •10.Умови і обмеження, які накладаються на відношення реляційною
- •11. Переваги реляційної бази даних
- •12. Життєвий цикл інформаційної системи
- •Життєвий цикл програмного забезпечення баз даних
- •13. Мета і задачі проектування
- •14. Проектування реляційної бази даних
- •Етапи проектування бази даних
- •15. Формулювання та аналіз вимог
- •16.Концептуальне проектування.
- •17.Модель "сутність-зв'язок".
- •18.Критерії вибору первинного ключа.
- •19.Логічне проектування.
- •20.Індексація в базах даних.
- •21.Методи доступу до файлів і хешування.
- •22.Цілісність і схоронність баз даних.
- •23.Нормалізація відношень. Необхідність нормалізації.
- •24. Аномалії додавання, вилучення і обновлення баз даних.
- •25.Явна і неявна надлишковість даних. Декомпозиція відношень.
- •26.Поняття нормальної форми. 1-а, 2-а, 3-я, 4-а нормальні форми. Нормальна форма Бойса-Кодда.
- •27.Реляційна алгебра. Основні і додаткові операції реляційної алгебри.
- •28.Представлення в базах даних.
- •29.Привілеї в базах даних.
- •30.Ієрархічна модель даних.
- •31.Мережева модель даних.
- •32. Багатовимірна модель даних. Olap.
- •33.Case-засоби проектування баз даних. Можливості проектування баз
27.Реляційна алгебра. Основні і додаткові операції реляційної алгебри.
Мови реляційних СУБД
У сучасних реляційних СУБД – дві групи мов:
– реляційна алгебра (операнди і результати – відношення);
– реляційне числення (декларативні мови – запити).
Реляційна алгебра - це теоретична мова операцій, що дозволяють створювати на основі одного або декількох відношень інше відношення без зміни самих вихідних відносин. Таким чином, обидва операнди і результат є відношеннями, тому результати однієї операції можуть застосовуватися в іншій операції. Це дозволяє створювати вкладені вирази реляційної алгебри (за аналогією з тим, як створюються вкладені арифметичні вирази), але при будь-якій глибині вкладеності результатом є відношення. Така властивістьназивається замкнутістю. Воно підкреслює те, що застосування будь-якої кількості операцій реляційної алгебри до відношень не призводить до створення інших об'єктів, крім відношень, точно так само, як результатами арифметичних операцій з числами є тільки числа.
Реляційна алгебра є мовою послідовного використання відношень, в якому все кортежі, можливо, навіть взяті з різних відношень, обробляються однією командою, без організації циклів. Для команд реляційної алгебри запропоновано кілька варіантів синтаксису.За справедливим зауваженням Дейта, реляційна алгебра Кодда володіє
кількома недоліками:
По-перше, вісім перерахованих операцій за охопленням своїх функцій, з одного боку, надлишкові, так як мінімально необхідний набір становлять п'ять операцій: об'єднання,віднімання, добуток, проекція і вибірка. Три інші операції (Перетин, з'єднання і поділ) можна визначити через п'ять мінімально необхідних. Так, наприклад, з'єднання - це проекція вибірки добутків.
По-друге, цих восьми операцій недостатньо для побудови реальної СУБД на принципах реляційної алгебри. Потрібні розширення, що включають операції: перейменуванняатрибутів, утворення нових обчислюваних атрибутів,обчислення підсумкових функцій, побудови складних алгебраїчних виразів, присвоєння, порівняння і т. д.
У виразах реляційної алгебри завжди явно задається якийсь порядок, а також мається на увазі якась стратегія обчислення запиту. У реляційному численні не існуєніякого опису процедури обчислення запиту, оскільки в запиті реляційного обчислення вказується, що, а не як слід витягти.
Реляційне числення не має нічого спільного з диференціальним або інтегральним численням, а його назва походить від тієї частини символьної логіки, яка називається обчисленням предикатів. В контексті баз даних воно існує в двох формах: у формі запропонованого Коддом реляційного обчислення кортежів і в формі запропонованого Лакруа і Піро реляційного обчислення доменів. У логіці першого порядку (або теорії числення предикатів) під предикатом мається на увазі функція істиності з параметрами. Після підстановки значень замість параметрів функція стає виразом, яке називається судженням, яке може бути істинним або хибним. Наприклад, речення "Іван Сидор є співробітником цієї організації" і "Іван Сидор має більш високу зарплату, ніж Ганна Буценко" є судженнями, оскільки можна визначити їх істинність або хибність. У першому випадку функція “є співробітником цієї організації” має один параметр ("Іван Сидор"), а в другому випадку функція “має більш високу зарплату, ніж” має два параметри ("Іван Сидор" і "Ганна Буценко").
Якщо предикат містить змінну, наприклад у вигляді "х є співробітником цієї організації", то у цієї змінної повинна бути відповідна область визначення. При підстановці замість змінної х одних значень з її області визначення дане судження може виявитися істинним, а при підстановці інших - хибним.
Наприклад, якщо областю визначення є всі люди і ми підставимо замість змінної х значення "Іван Сидор", то судження " Іван Сидор є співробітником цієї організації" буде істинним. Якщо ж замість змінної х підставити ім'я іншої людини, яка не є співробітником даної організації, то судження стане хибним.