Можешь перечислить типы связей, существующие между таблицами в базе данных?
Answer from AI
sobes.tech AI
В базах данных существуют три основных типа связей между таблицами:
-
Один к одному (One-to-One) — каждой записи в первой таблице соответствует ровно одна запись во второй таблице и наоборот. Используется, когда данные логически разделены, но связаны напрямую.
-
Один ко многим (One-to-Many) — одной записи в первой таблице соответствует множество записей во второй. Например, один пользователь может иметь много заказов.
-
Многие ко многим (Many-to-Many) — записи в первой таблице могут соответствовать множеству записей во второй и наоборот. Реализуется через промежуточную таблицу-связку, которая содержит внешние ключи обеих таблиц.
Пример связи "многие ко многим":
-- Таблица студентов
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)
);
Эти типы связей лежат в основе реляционного моделирования данных.