Sobes.tech
Junior — Middle

Μπορείς να απαριθμήσεις τους τύπους σχέσεων που υπάρχουν μεταξύ των πινάκων σε μια βάση δεδομένων;

sobes.tech AI

Απάντηση από AI

Στις βάσεις δεδομένων, υπάρχουν τρεις βασικοί τύποι σχέσεων μεταξύ πινάκων:

  1. Ένα προς ένα (One-to-One) — κάθε εγγραφή στον πρώτο πίνακα αντιστοιχεί σε ακριβώς μία εγγραφή στον δεύτερο πίνακα και το αντίστροφο. Χρησιμοποιείται όταν τα δεδομένα είναι λογικά διαχωρισμένα, αλλά άμεσα συνδεδεμένα.

  2. Ένα προς πολλά (One-to-Many) — μία εγγραφή στον πρώτο πίνακα αντιστοιχεί σε πολλές εγγραφές στον δεύτερο. Για παράδειγμα, ένας χρήστης μπορεί να έχει πολλές παραγγελίες.

  3. Πολλά προς πολλά (Many-to-Many) — οι εγγραφές στον πρώτο πίνακα μπορούν να αντιστοιχούν σε πολλές εγγραφές στον δεύτερο και το αντίστροφο. Υλοποιείται μέσω ενός ενδιάμεσου πίνακα που περιέχει ξένους κλειδιά και των δύο πινάκων.

Παράδειγμα σχέσης "πολλά προς πολλά":

-- Πίνακας φοιτητών
CREATE TABLE Students (
    StudentID INT PRIMARY KEY,
    Name VARCHAR(100)
);

-- Πίνακας μαθημάτων
CREATE TABLE Courses (
    CourseID INT PRIMARY KEY,
    Title VARCHAR(100)
);

-- Ενδιάμεσος πίνακας για τη σχέση πολλά προς πολλά
CREATE TABLE StudentCourses (
    StudentID INT,
    CourseID INT,
    PRIMARY KEY (StudentID, CourseID),
    FOREIGN KEY (StudentID) REFERENCES Students(StudentID),
    FOREIGN KEY (CourseID) REFERENCES Courses(CourseID)
);

Αυτοί οι τύποι σχέσεων αποτελούν τη βάση του σχεδιασμού σχεσιακών δεδομένων.