- •Організація баз даних
- •1.Вступ
- •2.Основні поняття.
- •1.1. Класифікація інформаційних систем
- •2.Файлові системи бд. Підхід, використовуваний у файлових системах. Обмеження, властиві файловим системам.
- •3.Системи з базами даних. База даних. Система керування базами даних — скбд. Компоненти середовища скбд. Переваги і недоліки скбд.
- •3.1.Компоненти середовища скбд
- •Контроль за надмірністю даних
- •3.4.Недоліки скбд
- •4.Етапи життєвого циклу інформаційної системи. Розробка бази даних. Розподіл обов'язків у системах з базами даних. Адміністратори даних і адміністратори баз даних.
- •2.1.Трьохрівнева архітектура ansi-sparc.
- •2.2. Схеми, відображення й екземпляри
- •2.3.Незалежність від даних
- •1. Функції субд (3.11.01.02).
- •1.Безпосереднє управління даними в зовнішній пам'яті
- •2.Управління транзакциями
- •3.Журналізація
- •4.Підтримка мов бд
- •5.Адміністрування бд.
- •2. Концепція відкритих систем. Відкритий зв’язок з бд odbc (3.11.04.01).
- •3. Багатокористувацькі субд та їх архітектура.
- •3.1. Телеобробка
- •3 .2.Архітектура іс з файловим сервером
- •3.3.Технологія "клієнт/сервер"
- •3.4.Розподілена архітектура.
- •3.5.Інтернет - архітектура.
- •4.1.Модель даних, мета побудови, класифікація, область застосування
- •4.2. Об'єктні моделі даних
- •4.3. Моделі даних на основі записів
- •4.2.1.Ієрархічна модель даних
- •4.2.2.Мережева модель даних у мережній структурі при тих же основних поняттях (рівень, вузол, зв'язок) кожний елемент може бути пов'язаний з будь-яким іншим елементом.
- •4.2.3.Реляційна модель даних
- •4.4. Фізичні моделі даних
- •5.1. Математичні відношення. Структура реляційних даних.
- •5.2.Домени
- •Лекція 6. Концептуальне проектування. Метод er-діаграми.
- •6.1.Рівні проектування предметної області (3.11.06.01).
- •6.2. Інфологічне проетування бд (3.11.06.02).
- •6.2. Концептуальне проектування бази даних та методологія.
- •6.3. Логічне проектування бд.
- •6.4. Даталогічна або фізична модель даних (3.11.06.03).
- •6.5. Проектування бд методом “сутність-зв’язок” er-діаграми (3.11.06.06)
- •6.5.2.Представлення зв'язків та сутностей на діаграмах.
- •6.5.4.Правила формування зв’язків між сутностями концептуальної схеми.
- •5.3.Нормалізація.
- •5.3.2.Процес нормалізації.
- •5.3.3.Нормальна форма Бойса-Кодда (нфбк). Визначення нормальної форми Бойса-Кодда.
- •5.3.4. Четверта нормальна форма (4нф). Визначення четвертої нормальної форми.
- •5.3.5. П'ята нормальна форма (5нф) Властивості з'єднання без втрат і збереження залежності
- •8.2. Виникаючі проблеми при використанні універсального відношення.
- •7.1. Введення в реляційну алгебру і реляційне числення.
- •7.2. Реляційна алгебра та її операції.
- •Вихідне відношення r та результуюче відношення s.
- •7.5.1. Операція декартового добутку
- •7.5.2. Операція об’єднання
- •7.5.3. Операція різниці.
- •7.5.4.Операції з'єднання
- •7.5.4.5.2. Праве відкрите зовнішнє з'єднання.
- •7.5.4.5.2. Повне відкрите зовнішнє з'єднання.
- •7.5.5.Операція перетинання
- •7.5.6.Операція ділення
- •10.1. Вступ Основні поняття sql.. Історія розвитку
- •10.2. Структура мови sql-92.
- •10.3. Основні оператори мови dml.
- •10.4 Зміна вмісту бази даних. Запити на оновлення даних
- •10.5. Оператори адміністрування:
- •10.63. Загальний огляд методів обробки запитів.
- •10.7. Архітектура клієнт-сервера і мова sql.
- •10.8 Забезпечення безпеки
- •11.1. Основні оператори мови ddl.Запити на створення та оновлення схеми бд, таблиць та представлень.
- •11.1.1. Створення баз даних.
- •11.1.2.Створення таблиць (оператор create table). Видалення таблиць (оператор drop table).
- •11.1.3.Створення відображення(представлення).В идаленнявідображення.
- •11.1.4.Створення індексу (оператор create index). Видалення індексу (оператор drop index).
- •11.2. Мова sql та qbe
- •10. Внутрішня мова субд.
- •11. Зберігаємі процедури та тригери. Призначення та переваги.
- •12. Технології доступу bde, ado, ado.Net, jdbc
- •Лекція 12. Транзакції. Паралельне виконання транзакцій.
- •12.1. Визначення транзакції. Виконання. Відкат.
- •12.2. Властивості транзакції. Види транзакцій.
- •12.3. Блокування. Рівні ізолювання транзакцій.
- •12.4. Управління транзакціями в мовах програмування.
- •12.4. Впорядкованість і відновлюваність.
- •12.5 Методи керування паралельністю.
- •Лекція 13. Індексація даних в бд.
- •13.1. Поняття індексації даних.
- •2.Структура індекса. Аналогією індекса може слугувати зміст будь якої книги з вказаними номерами сторінок, де починається той чи і інший розділ.
- •3. Технологія b-дерева
- •3.1.Типи індексів b-дерева.
- •3.1.1.Кластерні індекси
- •3.1.2.Некластерні індекси
- •4. Технологія хеширування.
- •5.Алгоритм роботи скбд при внесенні та видаленні запису в таблицю, що містить індексовані поля з використанням технології в-дерева.
- •5.1.При вставці нового запису в таблицю виконується:
- •5.2.При видаленні запису виконуються наступні дії:
- •6.Властивості індексів.
- •7.Індексація. За і проти. Ефективність використання.
- •8.Обмеження використання індексів.
- •8.1.Обмеження послідовності стовпців складного ключа.
- •8.2.Обмеження пов’язані з низькою селективністю індекса.
- •9.Індексація данних бд та оптимізатор sql-запитів.
- •10. Повнотекстові індекси
- •14.1. Розподіленні бази даних.
- •14.1.1. Класифікація рбд.
- •14.1.2. Переваги рбд.
- •14.1.3. Недоліки рбд.
- •14.1.4. Функції сурбд.
- •14.1.5. Архітектура рбд.
- •14.2. Компонентна структура рбд.
- •14.3. Проектування розподілених баз даних.
- •Фрагментація повина відповідати правилам:
- •14.4. Забезпечення прозорості.
- •16.1. Апаратні та програмні складові.
- •16.2. Особливості oltp, dss та olap систем
- •16.6. Безпека бази даних
- •16.3. Управління користувачами.
- •16.2. Управління доступом. Засоби підтримки безпеки в sql.
- •17.1. Недоліки реляційних систем.
- •17.2. Основні концепції об’єктно-орієнтованого підходу.
- •17.3. Альтернативні стратегії розробки об’єктно-орієнтованих субд.
- •17.4. Переваги та недоліки об’єктно-орієнтованих субд.
- •17.5. Перспективи розвитку бд.
7.5.4.5.2. Праве відкрите зовнішнє з'єднання.
FROM T1 RIGHT JOIN T2 ON T1.P1 = T2.P1 –праве відкрите
Правим зовнішнім з'єднанням називається з'єднання, при якому кортежі відношення R, що не мають співпадаючих значень у загальних стовпцях відносини S, також включаються в результуюче відношення.
Це означає, що результат запиту будуть включені всі рядки правої таблиці і тільки ті рядки лівої таблиці, для яких виконується умова з'єднання. Для рядків з правої таблиці, для яких не знайдено відповідності в лівій таблиці, в стовпці результуючого набору заносяться значеня NULL.
7.5.4.5.2. Повне відкрите зовнішнє з'єднання.
Це комбінація «лівого» та «правого» з'єднаня таблиць.
FROM T1 FULL JOIN T2 ON T1.P1 = T2.P1
Якщо не вказано тип з'єднаня в речені JOIN, то по умовчаню приймається за INNER.
Перевагою зовнішнього з'єднання є те, що при такому з'єднанні зберігається вихідна інформація, тобто зовнішнє з'єднання зберігає кортежі, що були б втрачені при використанні інших типів з'єднання.
7.5.5.Операція перетинання
Операція перетинання виконується над двома логічно поєднуваними відношеннями R та S з ідентичним набором атрибутів – A1,A2, ... An.
Її відносять до операцій, що реалізують внутрішнє з’єднання.
Вона визначає відношення, що містить кортежі, що присутні як у відношенні R, так і у відношенні S.
SELECT T1.A1, T1.A2 FROM T1 INNER JOIN T2 ON T1.PK1 = T2.PK1;
Р
езультат
перетинання має той же склад атрибутів,
як у вихідних відношенях
7.5.6.Операція ділення
Ця операція найменш очевидна зі всіх операцій реляційної алгебри.
Операція ділення виконується над двома відношенями R та S, що мають різні структури, але один або кілька атрибутів визначені на одних і тих же доменах.
У результаті операції діленя створюється нове відношення (RD), структура якого отримується шляхом виключення з множини атрибутів відношеня R множини атрибутів відношеня S.
Результуючі кортежі формуються для однакових значень загальних атрибутів (ключів зв'язку). При цьому кортежі-дублікати з RD виключаються.
SELECT DISTINCT T1.A FROM T1 INNER JOIN T2 ON T1.B = T2.B;
Лекція 10. Вступ до SQL.
Основні поняття SQL. Мова визначення даних — DDL. Запити на читання даних. Склеювання таблиць. Умови відбору рядків таблиць. Запис SQL-операторів. Маніпулювання даними. Прості запити. Сортування результатів. Агрегатні функції. Запити з групуванням. Складні запити. Підзапити. Ключові слова ANY і ALL. Багатотабличні запити. Ключові слова EXISTS і NOT EXIST. Комбінування результуючих таблиць (операції UNION, INTERSECT і EXCEPT). Зміна вмісту бази даних. Запити на оновлення даних.
10.1. Вступ Основні поняття sql.. Історія розвитку
До появи SQL в СУБД (незалежно від того, на якій моделі вони грунтувалися) доводилося підтримувати принаймні три мови, які за звичай мали мало спільного:
- мова визначення даних (ЯОД), служить для управління специфікаціями структури(або схеми) БД;
- мова маніпулювання даними (ЯМД), що дозволяє створювати прикладні програми, які взаємодіють з БД;
- мова адміністрування БД (ЯАДБ), за допомогою якого можна було виконувати службові дії (наприклад, змінювати структуру БД або проводити її налаштування з метою підвищення ефективності).
Поява в 1974 році мови SQL (Structured Query Language – мови структурованих запитів) дозволила вирішувати всі ці задачі.
Ще одна її перевага полягала в наявністі міжнародних стандартів.
Перший міжнародний стандарт був прийнятий в 1989 р., і відповідна версія мови називається SQL-89. Цей стандарт повністю підтримується практично в усіх сучасних комерційних реляційних СУБД (наприклад, у Informix, Sybase, Ingres, DB2 і т.д.).
Разом з тим стандарт SQL-89 забезпечив:
-чітку стандартизацію синтаксису і семантики операторів вибірки і маніпулювання даними.
-засобами визначення зовнішніх ключів, що дозволяють легко формулювати вимоги до системи контролю цілісності БД по посиланнях.
-засобами перевірочних обмежень цілісності, що дозволяють сформулювати умову для кожної окремої рядки таблиці.
Разом з тим стандарт SQL-89 в багатьох частинах має надзвичайно загальний характер і допускає дуже широкі тлумачення. В ньому повністю відсутні такі важливі розділи, як маніпулювання схемою БД і динамічний SQL.
Тому в березні 1992 р. був затверджений новий стандарт версії SQL-92. Він охопив практично всі необхідні для реалізації аспекти:
-маніпулювання схемою БД;
-управління транзакціями і сесіями (сесія - це послідовність транзакцій, в межах якої зберігаються тимчасові відносини)
-підключення до БД;
- динамічний SQL (sql-запит є статичним, якщо він компілюється і оптимізується на стадії, що передує виконанню програми. Ними є вбудовуванні sql-команди в програми на Сі або Кобол. Динамічний sql-запит компілюється і оптимізується під час виконання програми. Як правило, звичайні користувачі застосовують саме динамічний sql, що дозволяє створювати запити відповідно до одномоментних потребами. Між статичним і динамічним sql є певні відмінності в синтаксисі застосовуваних конструкцій та особливості виконання. Важливо, що це дозволяє навчитися використовувати sql не тільки програмістам, але і більшості кінцевих користувачів.).
Загальною точкою зору провідних виробників СУБД є те, що майбутні продукти, маючи більш розвинені можливості повинні бути сумісні з попередніми версіями. Саме в цьому ключі ведеться робота над наступним стандартом SQL-3, а також введення в нього:
-більш розвинених засобів визначення таблиць;
-підтримки повного механізму тригерів.
Проблемою введення стандарту SQL-3 є об'єктні розширення мови, що виходять за межі реляційної моделі даних, позбавляючи підтримки класичної теоретичної бази.
