Middle+
Koje vrste veza postoje između tabela?
sobes.tech АИ
Одговор од АИ
Postoje tri osnovne vrste odnosa između tabela u relacijskim bazama podataka:
-
Jedan na jedan (1:1) — svakom zapisu u prvoj tabeli odgovara tačno jedan zapis u drugoj tabeli i obrnuto. Koristi se kada su podaci logički odvojeni, ali povezani direktno.
-
Jedan na više (1:N) — jednom zapisu u prvoj tabeli odgovaraju mnogi zapisi u drugoj. Na primer, jedan kupac može imati mnogo porudžbina.
-
Mnogi na mnoge (M:N) — zapisi u prvoj tabeli su povezani sa mnogim zapisima u drugoj i obrnuto. Za implementaciju se obično kreira međutabela sa spoljnim ključevima za obe tabele.
Primer odnosa mnogi na mnogi:
-- Tabela studenata
CREATE TABLE Students (
StudentID INT PRIMARY KEY,
Name VARCHAR(100)
);
-- Tabela kurseva
CREATE TABLE Courses (
CourseID INT PRIMARY KEY,
Title VARCHAR(100)
);
-- Tabela veze između studenata i kurseva
CREATE TABLE StudentCourses (
StudentID INT,
CourseID INT,
PRIMARY KEY (StudentID, CourseID),
FOREIGN KEY (StudentID) REFERENCES Students(StudentID),
FOREIGN KEY (CourseID) REFERENCES Courses(CourseID)
);