Skip to main content

Що таке зв'язки між таблицями?

Зв'язки між таблицями - це логічні відношення між даними в різних таблицях, які дозволяють SQL «розуміти», як з'єднувати рядки під час запитів.

Вони будуються через ключі - спеціальні поля, за якими таблиці пов'язуються між собою.

1. Первинний ключ (PRIMARY KEY)

Це унікальний ідентифікатор рядка в таблиці. Кожен запис має своє неповторюване значення. Приклад:

sql
CREATE TABLE users ( id INT PRIMARY KEY, name VARCHAR(50) );

Поле id - унікальний ідентифікатор користувача.

2. Зовнішній ключ (FOREIGN KEY)

Це поле, яке посилається на первинний ключ іншої таблиці. Воно й створює сам зв'язок між таблицями. Приклад:

sql
CREATE TABLE orders ( id INT PRIMARY KEY, user_id INT, FOREIGN KEY (user_id) REFERENCES users(id) );

Тут user_id з orders пов'язаний з id з users. Кожне замовлення «належить» конкретному користувачу.

3. Типи зв'язків між таблицями

Тип зв'язкуОписПриклад
Один до одного (1:1)Кожному запису в таблиці A відповідає рівно один запис у таблиці B.Користувач - паспорт
Один до багатьох (1:N)Одному запису в таблиці A відповідає багато записів у таблиці B.Користувач - замовлення
Багато до багатьох (M:N)Кожен запис у A може бути пов'язаний з кількома в B і навпаки.Студенти - курси

4. Навіщо потрібні зв'язки

  • Щоб уникнути дублювання даних;
  • Щоб забезпечити цілісність (наприклад, не можна створити замовлення без наявного користувача);
  • Щоб коректно об'єднувати дані під час JOIN-запитів.

Підсумок: Зв'язок між таблицями - це логічна прив'язка через ключі, яка показує, які дані пов'язані одне з одним. Первинний ключ унікально визначає запис, зовнішній - вказує на нього з іншої таблиці, а самі зв'язки роблять базу структурованою, узгодженою й безпечною.

Коротка відповідь

Для співбесіди
Premium

Коротка відповідь допоможе вам впевнено відповідати на цю тему під час співбесіди.