Junior — Middle
Můžeš vyjmenovat typy vztahů, které existují mezi tabulkami v databázi?
sobes.tech AI
Odpověď od AI
V databázích existují tři hlavní typy vztahů mezi tabulkami:
-
Jeden k jednomu (One-to-One) — každý záznam v první tabulce odpovídá přesně jednomu záznamu ve druhé tabulce a naopak. Používá se, když jsou data logicky oddělena, ale přímo propojena.
-
Jeden k mnoha (One-to-Many) — jednomu záznamu v první tabulce odpovídá více záznamů ve druhé. Například jeden uživatel může mít mnoho objednávek.
-
Mnoho k mnoha (Many-to-Many) — záznamy v první tabulce mohou odpovídat mnoha záznamům ve druhé a naopak. Implementuje se přes prostřední tabulku obsahující cizí klíče obou tabulek.
Příklad vztahu "mnoho k mnoha":
-- Tabulka studentů
CREATE TABLE Students (
StudentID INT PRIMARY KEY,
Name VARCHAR(100)
);
-- Tabulka kurzů
CREATE TABLE Courses (
CourseID INT PRIMARY KEY,
Title VARCHAR(100)
);
-- Prostřední tabulka pro vztah mnoho k mnoha
CREATE TABLE StudentCourses (
StudentID INT,
CourseID INT,
PRIMARY KEY (StudentID, CourseID),
FOREIGN KEY (StudentID) REFERENCES Students(StudentID),
FOREIGN KEY (CourseID) REFERENCES Courses(CourseID)
);
Tyto typy vztahů jsou základem relačního modelování dat.