ЛЕКЦІЯ 1

Вступ до баз даних

Основи баз даних та спеціалізовані мови програмування

Ординський Олександр • викладач

ВТФК • Вінниця • 2025

Що таке База Даних?

База даних (БД) — це організована колекція структурованої інформації або даних, які зберігаються в електронному вигляді в комп'ютерній системі.

Основні характеристики БД:

Структурованість — дані організовані за певними правилами
Незалежність — дані незалежні від програм, що їх використовують
Мінімальна надлишковість — уникнення дублювання даних
Багатокористувацький доступ — можливість одночасної роботи кількох користувачів

Типи баз даних

  • Реляційні БД (SQL)
    • MySQL, PostgreSQL, Oracle
    • Використовують таблиці та зв'язки
    • Підтримують ACID властивості
  • NoSQL БД
    • MongoDB (документо-орієнтована)
    • Redis (ключ-значення)
    • Neo4j (графова)
  • NewSQL БД
    • Поєднання переваг SQL та NoSQL
    • Google Spanner, CockroachDB

Порівняння СУБД

СУБДТипМоваЛіцензіяПереваги
MySQLРеляційнаSQLGPL/КомерційнаШвидкість, популярність
PostgreSQLОб'єктно-реляційнаSQLPostgreSQLРозширюваність, JSON
MongoDBДокументнаNoSQLSSPLГнучкість схеми
RedisКлюч-значенняNoSQLBSDШвидкість, кешування

Приклад SQL запиту

Створення таблиці та вибірка даних:

-- Створення таблиці студентів
CREATE TABLE students (
    id INT PRIMARY KEY AUTO_INCREMENT,
    name VARCHAR(100) NOT NULL,
    email VARCHAR(100) UNIQUE,
    enrollment_date DATE,
    grade DECIMAL(3,2)
);

-- Додавання даних
INSERT INTO students (name, email, enrollment_date, grade)
VALUES 
    ('Іван Петренко', 'ivan@example.com', '2024-09-01', 4.5),
    ('Марія Коваленко', 'maria@example.com', '2024-09-01', 4.8);

-- Вибірка відмінників
SELECT name, grade 
FROM students 
WHERE grade >= 4.5
ORDER BY grade DESC;

💻 Практика: Створюємо свою базу даних

$

Що будемо робити:

Створимо базу даних для бібліотеки: таблиці книг, авторів та їх зв'язки. Напишемо запити для пошуку та фільтрації

Action Items:

Створити таблиці books, authors з відповідними полями та PRIMARY KEY
Додати зв'язки через books_authors з FOREIGN KEYConstraINts
Написати JOIN запити для пошуку книг автора та фільтрації за роком

Готові? Почали кодити!

ПІДСУМОК

  • База даних — організована колекція даних
  • Існують різні типи БД: SQL, NoSQL, NewSQL
  • Вибір СУБД залежить від завдання
  • SQL — основна мова для реляційних БД