Back to questions
Junior — Middle
73
Каким образом обычно осуществляется связь типа Many-to-Many в реляционной базе данных?
Answer from AI
sobes.tech AI
В реляционных базах данных связь Many-to-Many реализуется через промежуточную (связующую) таблицу, которая содержит внешние ключи на обе связанные таблицы.
Например, есть таблицы Students и Courses. Один студент может посещать много курсов, и один курс может иметь много студентов. Для связи создаётся таблица StudentCourses с двумя столбцами:
student_id— внешний ключ наStudentscourse_id— внешний ключ наCourses
Так можно эффективно хранить и запрашивать данные о связях Many-to-Many.
Пример схемы:
CREATE TABLE Students (
id INT PRIMARY KEY,
name VARCHAR(100)
);
CREATE TABLE Courses (
id INT PRIMARY KEY,
title VARCHAR(100)
);
CREATE TABLE StudentCourses (
student_id INT,
course_id INT,
PRIMARY KEY (student_id, course_id),
FOREIGN KEY (student_id) REFERENCES Students(id),
FOREIGN KEY (course_id) REFERENCES Courses(id)
);