
- •Тема 1. Системи баз даних. Основні поняття й архітектура 6
- •Тема 2. Реляційна модель бази даних 25
- •Тема 3. Нормалізація баз даних 33
- •Тема 4. Проектування бази даних 42
- •Тема 5. Проектування форм 62
- •Тема 6. Мова запитів sql 71
- •Тема 7. Проектування звітів 96
- •Тема 8. Бази знань у сучасних інтелектуальних інформаційних системах 99
- •Змістовий модуль 1 Тема 1. Системи баз даних. Основні поняття й архітектура Лекція 1. Вступ до баз даних.
- •Визначення бази даних, бази знань.
- •Визначення бази даних, бази знань.
- •Призначення баз даних та знань.
- •Перевага підходу, який передбачає використання баз даних :
- •Поняття інформаційної системи. [самостійне вивчення]
- •Лекція 2. Управління базами даних
- •Управління даними
- •Приклади баз даних та знань.
- •Огляд систем управління базами даних.
- •Основні функції системи управління базою даних.
- •Лінгвістичне забезпечення субд
- •Архітектура системи баз даних. [самостійне вичення]
- •Адміністрування бд [самостійне вичення]
- •Лекція 3. Історія розвитку баз даних
- •1. Виникненя баз даних. Едгар Кодд.
- •Ієрархічна модель.
- •Мережена модель.
- •Реляційна модель.
- •Етапи розвитку субд [самостійне вичення]
- •Четвертий етап - перспективи розвитку систем управління базами даних
- •Тема 2. Реляційна модель бази даних Лекція 4. Реляційні бази даних
- •1. Термінологія реляційних баз даних.
- •2. Реляційна алгебра, операції з множинами.
- •3. Реляційні операції, як команди мови маніпулювання даними [самостійне вичення]
- •1. Термінологія реляційних баз даних.
- •Реляційна алгебра, операції з множинами.
- •Реляційні операції, як команди мови маніпулювання даними [самостійне вичення]
- •Тема 3. Нормалізація баз даних Лекція 5. Нормалізація даних
- •Вимоги до побудови бд.
- •Мета і суть нормалізації.
- •Функціональні залежності та їх визначення.
- •Вимоги до побудови бд.
- •Мета і суть нормалізації.
- •3. Функціональні залежності та їх визначення.
- •Лекція 6. Особливості використання нормалізації даних
- •1. Переваги і недоліки нормалізації. Денормалізація.
- •2. Використання ms Access 2010 для нормалізації.
- •4. Нормальна форма Бойса-Кодда [самостійне вичення]
- •Переваги і недоліки нормалізації. Денормалізація.
- •Використання ms Access 2010 для нормалізації.
- •Перехід від і до ііі нф.
- •4. Нормальна форма Бойса-Кодда [самостійне вичення]
- •Змістовий модуль 2 Тема 4. Проектування бази даних Лекція 7. Створення баз даних
- •1. Створення нової бази даних.
- •Проектування бази даних
- •Етапи проектування бази даних
- •2.Визначення таблиць, які повинні містити база даних.
- •6. Відновлення структури бази даних.
- •4. Модель сутність-зв’язок у проектуванні бд
- •5. Розробка логічної моделі даних. [самостійне вичення]
- •Лекція 8. Таблиці і схема даних
- •Проектування таблиць.
- •Створення таблиць.
- •Типи даних.
- •Типи таблиць і ключів в реляційних базах даних
- •Типи відношень.
- •7. Імпорт та експорт даних. [самостійне вичення]
- •Тема 5. Проектування форм Лекція 9. Елементи створення форм
- •1. Призначення форм
- •2. Створення форми одного елемента
- •Автоматичне створення підтаблиць
- •Створення форми з наявної таблиці або запиту
- •Лекція 10. Складні форми
- •Створення пустої форми
- •Створення розділеної форми
- •Створення форми, у якій відображається кілька записів
- •Створення форми, яка містить підформи
- •Створення форми навігації
- •6. Захист бази даних. [самостійне вичення]
- •Тема 6. Мова запитів sql Лекція 11. Особливості мови sql
- •Загальні засади структурованої мови запитів sql.
- •1. Загальні засади структурованої мови запитів sql.
- •2. Мова визначення даних (ddl)
- •3. Створення або змінення таблиці засобами ddl [самостійне вичення]
- •Лекція 12. Команда select
- •Синтаксис команди select.
- •Операції «зірочка», «крапка», as.
- •Приклади
- •1.Синтаксис команди select.
- •Синтаксис:
- •2. Операції «зірочка», «крапка», as.
- •3. Приклади
- •Лекція 13. Особливі конструкції команди select
- •1. Речення where
- •2. Речення group by
- •3. Речення having
- •Речення order by
- •Лекція 14. Конструювання запитів
- •1. Запити
- •2. Запит на вибірку, перехресний запит
- •Запит на змінення
- •Запит з параметрами
- •5. Виконання sql-запиту
- •6. Змінення псевдоніма поля
- •7. Перевірка об’єднаних полів у запиті [самостійне вичення]
- •Лекція 15. Агрегатні функції в sql
- •Агрегатні функції.
- •Функція «Середнє»
- •Функція Count
- •Функції First і Last
- •Функції Min, Max
- •Функція Sum
- •Тема 7. Проектування звітів Лекція 16. Звіти
- •Призначення звітів.
- •Побудова звітів
- •Структурні елементи звіту
- •Призначення звітів
- •Побудова звітів
- •Структурні елементи звіту
- •Загальні засади
- •Класифікація баз знань
- •2. Класифікація баз знань
- •3. Фрейм
- •4. Структура фрейма
- •Базові елементи фреймів [самостійне вичення]
- •Лекція 18. Застосування баз знань
- •Інтелектуальна інформаційна система
- •Класифікація завдань, розв'язуваних ііс
- •1. Інтелектуальна інформаційна система
- •2. Класифікація завдань, розв'язуваних ііс
Реляційні операції, як команди мови маніпулювання даними [самостійне вичення]
Найбільш важливою командою мови маніпулювання даними є команда SELECT. За уявною простотою її синтаксису ховається величезне багатство можливостей. Нам важливо навчитися користовуватися цим багатством! Для того, щоб показати, що мова SQL є реляційно повною, потрібно показати, що будь реляційний оператор може бути виражений засобами SQL. Насправді достатньо показати, що засобами SQL можна виразити будь-який з примітивних реляційних операторів.
В якості інформаційної основи для прикладів ми будемо використовувати базу даних «Службовці підприємства» (схема Human Resources (HR)) (рис. 10.1.), що входить в поставку Oracle 11g EX. У записах про штат співробітників кожен співробітник має ідентифікаційний номер, адресу електронної пошти, ідентифікатор посади, оклад і (ідентифікатор) керівника. Деякі співробітники додатково до окладу заробляють комісійні. Також компанія зберігає інформацію про посади в рамках організації. У кожної посади є ідентифікатор, назва і діапазон (мінімальних та максимальних) окладів. Деякі співробітники довгий час працюють в компанії і займали в ній різні посади. При виході співробітника з посади записуються відомості про тривалість його роботи на даній посаді, її ідентифікатор і підрозділ, в якому працював співробітник. Компанія з даного прикладу працює в декількох регіонах, тому зберігаються відомості про місця розташування її складів і підрозділів. Співробітник може бути приписаним до одного з підрозділів, а кожен підрозділ ідентифікується унікальним номером. Кожен підрозділ пов'язаний (знаходиться у взаємно однозначній відповідності) з одним місцем розташування, а для кожного місця розташування зберігається повна адреса, що містить назву вулиці, поштовий індекс, місто, штат або область та код країни. Для місцезнаходжень підрозділів і складів зберігається деталізована інформація: назва країни і географічний регіон, де розташована країна.
Наведена схема (рис.4.1) бази даних Human Resources для Oracle, зроблена за допомогою CASE-засобу ERwin Data Modeler. На схемі показані таблиці бази даних і взаємозв'язки, а також позначені первинні ключі та їх зв'язки з зовнішніми ключами. Багато з прикладів, особливо в наступній лекції, є досить складними. Однак, не слід на цій підставі робити висновок, що така складна сама мова SQL. Справа, скоріше за все, в тому, що звичайні (стандартні) операції настільки прості в SQL, що приклади таких операцій виявляються досить нецікавими і не ілюструють повної потужності цієї мови. Але в цілях системності ми пройдемо по всім можливостям SQL: від найпростіших - до надзвичайно складних.
Рис. 4.1. Схема БД Human Resources
Тема 3. Нормалізація баз даних Лекція 5. Нормалізація даних
План лекції
Вимоги до побудови бд.
Мета і суть нормалізації.
Функціональні залежності та їх визначення.
Вимоги до побудови бд.
Практика розробки та експлуатації баз даних викристалізувала базові вимоги до їх побудови. Це зокрема вимоги:
цілісності даних (обмеження; правила використання обмежень; правила обробки при порушенні обмежень цілісності; ефективність використання обмежень);
узгодженості даних;
відновлюваності даних (при збоях обладнання);
безпеку (від несанкціонованих дій);
ефективності, яке визначається такими параметрами, як швидкодія, мінімальний час доступу та мінімальна пам’ять.
З іншої сторони в середовищі прикладних користувачів-розробників були сформовані так звані бізнес - правила для роботи з базами даних. Їх суть полягає в ефективній реалізації роботи з даними, яка гарантує, що дані, які містяться в базах даних, повинні відповідати політиці i стратегії організації, зокрема i її правилам. Наприклад, для реалізації цього принципу потрібно встановити вимоги до кожного стовпця в таблиці базах даних так, щоб він не допускав значень, які суперечили б політиці організації. Фактично бізнес правила вимагають виконання трьох основних функцій:
зберігати не бажанні дані поза базами даних;
однозначно описувати i строго визначати зв’язки між стовпцями i таблицями;
при необхідності надавати інформацію звідки, коли і ким данi внесені в базу даних.