Poți enumera tipurile de relații existente între tabele într-o bază de date?
sobes.tech AI
Răspuns de la AI
În bazele de date, există trei tipuri principale de relații între tabele:
-
Unu la unu (One-to-One) — fiecărui înregistrări din prima tabelă îi corespunde exact o înregistrare în a doua tabelă și vice versa. Se utilizează atunci când datele sunt logic separate, dar legate direct.
-
Unu la mai multe (One-to-Many) — unei înregistrări din prima tabelă îi corespund mai multe înregistrări în a doua. De exemplu, un utilizator poate avea multe comenzi.
-
Multe la multe (Many-to-Many) — înregistrările din prima tabelă pot corespunde mai multor înregistrări în a doua și vice versa. Se implementează printr-un tabel intermediar care conține chei externe ale ambelor tabele.
Exemplu de relație "multe la multe":
-- Tabelul studenților
CREATE TABLE Students (
StudentID INT PRIMARY KEY,
Name VARCHAR(100)
);
-- Tabelul cursurilor
CREATE TABLE Courses (
CourseID INT PRIMARY KEY,
Title VARCHAR(100)
);
-- Tabelul intermediar pentru relația multe la multe
CREATE TABLE StudentCourses (
StudentID INT,
CourseID INT,
PRIMARY KEY (StudentID, CourseID),
FOREIGN KEY (StudentID) REFERENCES Students(StudentID),
FOREIGN KEY (CourseID) REFERENCES Courses(CourseID)
);
Aceste tipuri de relații sunt fundamentale în modelarea relațională a datelor.