Основи баз даних 2025
VTFK • 2025
До появи СКБД використовувались файлові системи.
Недоліки файлового підходу:
• Надлишковість даних (дублювання інформації).
• Складність доступу та пошуку.
• Проблеми цілісності та узгодженості.
• Атомарність операцій (складність реалізації транзакцій).
Пойменована сукупність структурованих даних, що відображає стан об'єктів та їхніх зв'язків у визначеній предметній області.
Аналогія: Приклад предметної області: Система обліку студентів магічного коледжу (сутності: Студенти, Факультети, Курси).
Сукупність програмних і мовних засобів, необхідних для створення, ведення та використання баз даних.
Аналогія: Приклади СКБД: PostgreSQL, MySQL, SQLite, Oracle, MongoDB.
Рівні абстракції в базах даних
| Характеристика | Файлова система | СКБД |
|---|---|---|
| Структура | Залежить від формату файлу | Строго визначена моделлю |
| Надлишковість | Висока | Контрольована (мінімальна) |
| Доступ | Послідовний/Прямий (складний) | Мова запитів (SQL) |
| Безпека | На рівні ОС | Гранулярна (на рівні полів) |
Жорстка структура, складність навігації (IMS, IDMS).
Дані як таблиці, математична основа.
Стандартизація мови запитів.
Гнучкі схеми для Big Data (Key-Value, Document).
-- Ми описуємо РЕЗУЛЬТАТ, а не алгоритм його отримання
SELECT first_name, last_name
FROM wizards
WHERE house_id = 1;
Ототожнення понять 'База Даних' та 'СКБД'
База даних = СКБД
Вони це одне і те саме
Це невірно! БД і СКБД — це різні поняття
База даних (БД) = самі дані (пасивний елемент)
СКБД = програмне забезпечення (активний елемент)
Файл 'hogwarts.db' — це БД. Програма 'sqlite3' — це СКБД.
Для виконання лабораторних робіт використовуватиметься сучасний стек технологій:
1. GitHub Codespaces — Хмарне середовище розробки (IDE)
2. SQLite — Вбудована реляційна база даних
3. Термінал (Bash) — Для керування середовищем та запуску утиліт
Це забезпечує уніфікацію робочого місця для всіх студентів
Базові команди терміналу для початку роботи
# Перевірка версії встановленої СКБД
sqlite3 --version
# Створення порожньої бази даних
sqlite3 test_db.sqlite
Примітка: Переконайтеся, що SQLite встановлено у вашому середовищі
Далі перейдемо до практичного вивчення SQL та реляційних структур
Лекція 2: Реляційна модель та типи даних
Дякую за увагу! 💾