Реляційні бази даних та СКБД (DBMS)
Розділ: Бази та сховища даних
📌 Про що ця тема
Тут перевіряють розуміння, як влаштована реляційна база даних: з чого складається таблиця, що таке ключі та звʼязки між таблицями, і яку роль виконує СКБД (система керування базами даних, англ. DBMS). Ключове поняття — реляція (таблиця) та звʼязки між таблицями через ключі.
📖 Головне
• База даних (БД) — впорядкований набір структурованих даних на певну тему. Реляційна БД зберігає дані у вигляді таблиць, повʼязаних між собою.
• СКБД (DBMS) — програма для створення БД, введення, зберігання, пошуку, зміни та захисту даних. Приклади: Microsoft Access, MySQL, PostgreSQL, SQLite, Oracle.
• Таблиця (відношення, реляція) складається з рядків і стовпців.
• Запис (рядок, кортеж) — повна інформація про один обʼєкт.
• Поле (стовпець, атрибут) — окрема характеристика обʼєкта; усі значення в полі мають один тип.
• Тип даних поля: текстовий, числовий, логічний (так/ні), дата/час, грошовий, лічильник (автонумерація) тощо.
• Первинний ключ (Primary Key) — поле або набір полів, що однозначно ідентифікує кожен запис; значення унікальні й не порожні.
• Зовнішній ключ (Foreign Key) — поле, що посилається на первинний ключ іншої таблиці; так створюються звʼязки.
• Типи звʼязків: один-до-одного (1:1), один-до-багатьох (1:∞) — найпоширеніший, багато-до-багатьох (∞:∞, реалізується через проміжну таблицю).
• Основні обʼєкти БД (напр. в Access): таблиці (дані), запити (вибірка даних за умовами), форми (зручне введення/перегляд), звіти (друк), макроси.
• Запит дозволяє відфільтрувати, відсортувати та обчислити дані за заданими критеріями.
• Основна мова роботи з реляційними БД — SQL (запити SELECT, INSERT, UPDATE, DELETE).
• Переваги реляційної моделі: усунення дублювання даних, цілісність, зручний пошук і звʼязування таблиць.
🔢 Як це працює на прикладі
Маємо дві таблиці шкільної БД:
• Учні: поля Код_учня (первинний ключ), Прізвище, Клас_код.
• Класи: поля Код_класу (первинний ключ), Назва_класу, Класний_керівник.
Поле Клас_код у таблиці Учні — це зовнішній ключ, що посилається на Код_класу в таблиці Класи. Звʼязок — один-до-багатьох: один клас має багато учнів, але кожен учень належить одному класу.
Запит «показати учнів 10-А»: обираємо з таблиці Учні ті записи, де через звʼязок Назва_класу = «10-А». Результат — список прізвищ. Так дані не дублюються: назва класу зберігається один раз у таблиці Класи.
⚠️ Типові помилки
• Плутають запис і поле: запис — це рядок (один обʼєкт), поле — стовпець (одна ознака).
• Вважають, що первинний ключ може повторюватися чи бути порожнім — ні, він завжди унікальний.
• Плутають БД і СКБД: БД — це самі дані, СКБД — програма для роботи з ними.
• Думають, що звʼязок багато-до-багатьох створюється напряму — насправді через проміжну (звʼязувальну) таблицю.
• Плутають запит і фільтр/форму: запит робить вибірку за умовами, форма лише відображає дані.
🎯 Що завчити напамʼять
• Запис = рядок (кортеж), поле = стовпець (атрибут).
• Первинний ключ — унікальний, не порожній.
• Зовнішній ключ створює звʼязок між таблицями.
• Три типи звʼязків: 1:1, 1:∞, ∞:∞.
• Обʼєкти БД: таблиці, запити, форми, звіти.
• SQL-команди: SELECT, INSERT, UPDATE, DELETE.
🧠 Перевір себе
1. Чим відрізняється база даних від СКБД?
2. Які властивості має первинний ключ?
3. Як реалізують звʼязок багато-до-багатьох?
4. Який обʼєкт БД використовують для вибірки даних за умовою?
Відповіді: 1 — БД це структуровані дані, СКБД це програма для керування ними; 2 — унікальність значень і відсутність порожніх (null) значень, однозначно ідентифікує запис; 3 — через проміжну (звʼязувальну) таблицю з двома зовнішніми ключами; 4 — запит (SQL-команда SELECT).