Назад к вопросам
Middle+
3
Как реализовать связь многие ко многим?
Компании, где спрашивали
Билайн
Ответ от нейросети
sobes.tech AI
Связь многие ко многим реализуется через промежуточную таблицу (join table) в базе данных, которая содержит пары идентификаторов связанных сущностей.
Например, есть сущности Студент и Курс. Один студент может посещать много курсов, и один курс может иметь много студентов.
Реализация в реляционной БД:
CREATE TABLE Student (
id INT PRIMARY KEY,
name VARCHAR(100)
);
CREATE TABLE Course (
id INT PRIMARY KEY,
title VARCHAR(100)
);
CREATE TABLE Student_Course (
student_id INT,
course_id INT,
PRIMARY KEY (student_id, course_id),
FOREIGN KEY (student_id) REFERENCES Student(id),
FOREIGN KEY (course_id) REFERENCES Course(id)
);
В объектно-ориентированном подходе (например, в ORM) это отражается через коллекции с аннотациями или настройками, указывающими на связь многие ко многим.
Таким образом, промежуточная таблица связывает записи двух таблиц, позволяя реализовать множественные связи между ними.