- •1. Дати визначення бази даних та субд; визначити відмінності бази даних від файлової системи; перелічити компоненти субд, а також вимоги, яким вони повинні відповідати.
- •2.Представити архітектуру субд; дати порівняльну характеристику її зовнішньому, концептуальному і внутрішньому рівням; перелічити функції субд.
- •3.Моделі даних: класифікація, головні властивості кожної моделі; порівняти моделі між собою і визначити переваги і недоліки кожної моделі.
- •4. Дати визначення реляційної моделі даних і назвати її складові елементи; пояснити роботу операцій реляційної алгебри.
- •5.Обґрунтувати необхідність проведення нормалізації; дати характеристику нормальним формам бази даних; визначити основні нормальні форми; привести приклади таблиць у нормальних формах.
- •6.Основні фази та етапи життєвого циклу системи баз даних; методологія проектування баз даних: вимоги до методології, послідовність проектування
- •8.Даталогічне проектування бази даних: перелічити етапи і визначити правила переходу від концептуальної моделі до логічної моделі.
- •9. Засоби автоматизації проектування баз даних: класифікація та функціональні можливості case засобів; об’єктно-орієнтований та структурний підходи до проектування баз даних.
- •10. Мова sql: основні можливості по формуванню запитів до бази даних, приклади запитів.
- •11. Мова sql: основні можливості по визначенню даних та маніпулюванню даними в базі даних, приклади операцій по створенню бази даних та по маніпулюванню даними.
- •12.Мова запитів qbe: основні можливості по формуванню запитів до бази даних, приклади запитів.
- •13.Паралельна обробка даних у базі даних; транзакції і їхні властивості; управління транзакціями, двохфазове блокування, метод тимчасових міток.
- •14.Архітектура клієнт-сервер: визначити властивості цієї схеми, перелічити переваги і недоліки; порівняти сервер файлів із сервером бази даних.
- •15.Пояснити призначення процедур, що зберігаються, тригерів, генераторів; привести приклади цих програм.
- •17.Розподілені бази даних: архітектура, механізми розподіленого зберігання даних; механізми і моделі реплікації; фрагментація баз даних.
- •18.Технології об’єктного зв’язування odbc, ole db, ado: організація доступу до даних, дати порівняльний аналіз роботи цих механізмів доступу
- •19.Захист інформації в базах даних: пояснити за допомогою яких засобів підтримується безпека, перелічити основні моделі безпеки, привести приклади захисту інформації на мові sql.
- •20.Об’єктно-орієнтовані бази даних: склад та структура об’єктно-орієнтованої моделі, організація збереження даних та доступу до даних; об’єктно-реляційні бази даних.
- •21.Фізична організація баз даних: склад та структура, фізичне збереження даних у базі даних, багаторівнева організація пам’яті, кешування.
- •22.Пояснити необхідність застосування індексів у базах даних, склад та структура індексів, хешування, бінарні дерева, b–дерева.
- •23.Визначити цілісність бази даних; пояснити яким чином підтримується цілісність бази даних; які шляхи збереження цілісності при різних операціях по зміні даних у базі даних.
- •24.Технології створення баз даних за допомогою сучасних інструментальних засобів, перелічити послідовність робіт із створення локальної і серверної бази даних.
- •26.Бази даних в Internet: публікації баз даних в Internet, web-застосування і web-сервери, інтерфейси програмування web-застосувань, використання технології xml для публікації баз даних.
- •27.Інформаційні сховища: склад і структура, багатомірна модель даних, проектування багатомірних баз даних, застосування технологій olap для обробки даних.
- •29.Інформаційне забезпечення автоматизованих систем: склад та структура інформаційного забезпечення, системи класифікації та кодування інформації.
- •30.База знань: склад і структура, головні відмінності від бази даних; моделі представлення знань, організація виведення в базах знань.
10. Мова sql: основні можливості по формуванню запитів до бази даних, приклади запитів.
SQL (англ. Structured query language - мова структурованих запитів) - мова програмування для взаємодії користувача з базами даних, що застосовується для запитів, поновлення і керування реляційними БД. Сам по собі SQL не є ні системою керування базами даних, ні окремим програмним продуктом. Не будучи мовою програмування в тому розумінні, як C або Pascal, SQL спроможна формувати інтерактивні запити або, будучи вмонтованою в аплікації, виступати в якості інструкцій для керування даними. Стандарт SQL, крім того, вміщує функції для визначення зміни, перевірки і захисту даних.
Можна застосовувати:
В інтерективному режимі: SQL-транслятор-код
Застосування в прикладній програмі:базова мова+ SQL – препроцесор – базова мова+виклики функцій – компілятор базової мови – код
Приклади запитів:
Щоб отримати інформацію ,яка міститься в бд використовується запит SELECT.
'select * from city where cc in (select cc from country where cn=:n1)');
<вибрати з city , де cc знаходиться у множині , а саме – вибрати cc з country ,де cn=:n1>
Запит INSERT використовується для створення нового рядку даних.для оновлення вже існуючих даних або порожніх полей рядкутреба використовувати запит UPDATE.
INSERT INTO table_name (column1, column2, column3)
VALUES (‘data1’, ‘data2’, ‘data3’);
Запрос UPDATE и условие WHERE
UPDATE використовується для того,щоб змінити існцючі значення або звільнити поле в рядку,тому нові значення повинні відповідати існуючому типа даних та забеспечувати дійсні значення.Якщо ви бажаєте змінити значення по всім рядкам ,тоді необхідно викоистовувати умову WHERE.
UPDATE table_name SET column1 = ‘data1’, column2 = ‘data2’
WHERE column3 = ‘data3’;
Будьте обережні! Запит DELETE знищує цілі рядки.Запит DELETE повністю знищує рядок з бд.Якщо ві бажаете видалити 1 єдине поле ,тоді необхідно використовувати запит UPDATE та встановити для цього поля значення,яке буду аналогом NULL у вашій програмі.Запит DELETE неоюхідно обмежувати умовою WHERE,у іншому вииадку ві можете втратити весь вміст таблиці..
DELETE FROM table_name WHERE column1 = ‘data1’;
Запит – певна операція над відношеннями, результатом якої є також певне відношення. Мова запитів – це штучна мова для опису запитів, організації пошуку в БД. Структурована мова записів SQL – це непроцедурна мова, яка базується на реляційному обчисленні кортежів. Вона не має команд для відображення інф-ї, а також команд управління, у цій мові не оголош змінні.
Існує два варіанти мови SQL – інтерактивний і вбудований. Інтерактивний SQL використовується для виконання дій безпосередньо у БД з метою отримання необхідного результату. Вбудований SQL складається з команд SQL, які включені у програму, написану на будь-якій іншій мові програмування. Мова SQL складається з трьох категорій операторів:команд мови визначення (опису) даних (DDL),
команд мови маніпулювання даними (DML),
команд мови запитів (DQL).
Основні елементи мови SQL:
Будь-який запит складається з речень:
SELECT – визначається набором стовпців результуючого набору даних
FROM – імена таблиць джерел інформації
WHERE – виконується фільтрація рядків об’єкту у відповідності з заданими вимогами
GROUP BY – утворюються групи рядків, які мають одне й теж значення у вказаному стовпчику
HAVING – задає умову, яка накладається на групи рядків набору данних
UNION – дозволяє об’єднати результати виконання декількох запитів (ці результати повинні мати однакові атрибути)
ORDER BY – дозволяє відсортувати результуючий набір даних за вказаним полем або групою полів
EXISTS-перетин
DISTINCT- проекція
Порядок речень і фраз в операторі SELECT не може бути змінений. Тільки вирази SELECT і FROM є обов’язковими, всі інші речення і фрази можуть не застосовуватись. Результатом дії оператора SELECT є таблиця.
Прості запити стосуються однієї таблиці, складні-декількох.
Викладач (Teacher) Спеціальність (Speciality)
Дисципліна |
Прізвище викладача |
NS |
ST |
Дисципліна |
К-сть годин |
NS |
VH |
Визначити всі
дисципліни, який викладає щербина
SELECT NS
FROM Teacher
WHERE
ST='Щербина'
Проекція. Визначити
прізвища всіх викладачів
SELECT ST
FROM Teacher
SELECT
DISTINCT ST (не
включає дубльовані рядки)
FROM Teacher
Операція об’єднання.
Визначити назви всіх дисциплін, які
зустрічаються 1-му і 2-му відношенні.
SELECT NS
FROM Teacher
Union
SELECT NS
FROM Speciality
Перетин. Визначити
назви всіх дисциплін, які одночасно
зустрічаються і в 1-му і 2-му відношенні.
SELECT NS
FROM Teacher
(SELECT NS
FROM Speciality
WHERE
Teacher . NS = Speciality. NS)
Різниця. Визначити
назви всіх дисциплін, які зустрічаються
в 1-му і не зустрічаються в 2-му відношенні
SELECT NS
FROM Teacher
WHERE NOT EXISTS
(SELECT NS
FROM Speciality
WHERE Teacher . NS = NS)
З’єднання.
Визначити назви дисциплін і прізвищ
викладачів, для яких назва дисципліни
зустрічаються і в 1-му і 2-му відношенні.
SELECT Teacher*
FROM Teacher, Speciality
WHERE
Teacher . NS = Speciality. NS)