Back to questions
Middle+
3
Виды связей между таблицами?
Companies where asked
Билайн
Answer from AI
sobes.tech AI
Между таблицами в реляционных базах данных существуют три основных вида связей:
-
Один к одному (1:1) — каждой записи в первой таблице соответствует ровно одна запись во второй таблице и наоборот. Используется, когда данные логически разделены, но связаны напрямую.
-
Один ко многим (1:N) — одной записи в первой таблице соответствует множество записей во второй. Например, один заказчик может иметь много заказов.
-
Многие ко многим (M:N) — записи в первой таблице связаны с множеством записей во второй и наоборот. Для реализации обычно создаётся промежуточная таблица-связка с внешними ключами на обе таблицы.
Пример связи многие ко многим:
-- Таблица студентов
CREATE TABLE Students (
StudentID INT PRIMARY KEY,
Name VARCHAR(100)
);
-- Таблица курсов
CREATE TABLE Courses (
CourseID INT PRIMARY KEY,
Title VARCHAR(100)
);
-- Таблица связки студентов и курсов
CREATE TABLE StudentCourses (
StudentID INT,
CourseID INT,
PRIMARY KEY (StudentID, CourseID),
FOREIGN KEY (StudentID) REFERENCES Students(StudentID),
FOREIGN KEY (CourseID) REFERENCES Courses(CourseID)
);