Sobes.tech
Junior — Middle

Можеш ли да набројиш типове веза које постоје између табела у бази података?

sobes.tech АИ

Одговор од АИ

U bazama podataka postoje tri osnovne vrste odnosa između tabela:

  1. Jedan na jedan (One-to-One) — za svaki zapis u prvoj tabeli odgovara tačno jedan zapis u drugoj tabeli i obrnuto. Koristi se kada su podaci logički odvojeni, ali direktno povezani.

  2. Jedan na više (One-to-Many) — jednom zapisu u prvoj tabeli odgovara više zapisa u drugoj. Na primer, jedan korisnik može imati mnogo porudžbina.

  3. Više na više (Many-to-Many) — zapisi u prvoj tabeli mogu odgovarati mnogim zapisima u drugoj i obrnuto. Implementira se putem posredne tabele koja sadrži spoljne ključeve obe tabele.

Primer odnosa "više na više":

-- Tabela studenata
CREATE TABLE Students (
    StudentID INT PRIMARY KEY,
    Name VARCHAR(100)
);

-- Tabela kurseva
CREATE TABLE Courses (
    CourseID INT PRIMARY KEY,
    Title VARCHAR(100)
);

-- Posredna tabela za odnos više na više
CREATE TABLE StudentCourses (
    StudentID INT,
    CourseID INT,
    PRIMARY KEY (StudentID, CourseID),
    FOREIGN KEY (StudentID) REFERENCES Students(StudentID),
    FOREIGN KEY (CourseID) REFERENCES Courses(CourseID)
);

Ove vrste odnosa su osnova relacijskog modeliranja podataka.