Junior — Middle
Môžeš vymenovať typy vzťahov, ktoré existujú medzi tabuľkami v databáze?
sobes.tech AI
Odpoveď od AI
V databázach existujú tri hlavné typy vzťahov medzi tabuľkami:
-
Jeden ku jednému (One-to-One) — každý záznam v prvej tabuľke zodpovedá presne jednému záznamu v druhej tabuľke a naopak. Používa sa, keď sú údaje logicky oddelené, ale priamo prepojené.
-
Jeden ku mnohým (One-to-Many) — jeden záznam v prvej tabuľke zodpovedá viacerým záznamom v druhej. Napríklad, jeden používateľ môže mať mnoho objednávok.
-
Mnoho ku mnohému (Many-to-Many) — záznamy v prvej tabuľke môžu zodpovedať mnohým záznamom v druhej a naopak. Implementuje sa prostredníctvom medzi tabuľky obsahujúcej cudzie kľúče oboch tabuliek.
Príklad vzťahu "mnoho ku mnohému":
-- Tabuľka študentov
CREATE TABLE Students (
StudentID INT PRIMARY KEY,
Name VARCHAR(100)
);
-- Tabuľka kurzov
CREATE TABLE Courses (
CourseID INT PRIMARY KEY,
Title VARCHAR(100)
);
-- Medzi tabuľka pre vzťah mnoho ku mnohému
CREATE TABLE StudentCourses (
StudentID INT,
CourseID INT,
PRIMARY KEY (StudentID, CourseID),
FOREIGN KEY (StudentID) REFERENCES Students(StudentID),
FOREIGN KEY (CourseID) REFERENCES Courses(CourseID)
);
Tieto typy vzťahov sú základom relačného modelovania dát.