Sobes.tech
Junior — Middle

Ποιος είναι ο ρόλος του εξωτερικού κλειδιού σε μια σχεσιακή βάση δεδομένων SQL;

sobes.tech AI

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

Το ξένο κλειδί (foreign key) σε μια σχεσιακή βάση δεδομένων χρησιμοποιείται για να καθιερώσει και να διασφαλίσει τη σχέση μεταξύ δύο πινάκων. Αντιπροσωπεύει μια στήλη ή ένα σύνολο στηλών σε έναν πίνακα που αναφέρεται στο πρωτεύον κλειδί ενός άλλου πίνακα.

Ο ρόλος του ξένου κλειδιού:

  • Διασφαλίζει την ακεραιότητα των δεδομένων, αποτρέποντας την εισαγωγή τιμών που δεν υπάρχουν στον σχετικό πίνακα.
  • Διατηρεί τη σχέση μεταξύ των πινάκων, επιτρέποντας την εκτέλεση ενώσεων (JOIN) και την κατασκευή σχετικών ερωτημάτων.
  • Βοηθά στην υλοποίηση επιχειρηματικών κανόνων σε επίπεδο βάσης δεδομένων, π.χ., περιορίζοντας τη διαγραφή εγγραφών που αναφέρονται σε άλλους πίνακες.

Παράδειγμα:

CREATE TABLE Departments (
    DeptID INT PRIMARY KEY,
    DeptName VARCHAR(100)
);

CREATE TABLE Employees (
    EmpID INT PRIMARY KEY,
    EmpName VARCHAR(100),
    DeptID INT,
    FOREIGN KEY (DeptID) REFERENCES Departments(DeptID)
);

Εδώ, το DeptID στον πίνακα Employees είναι ένα ξένο κλειδί που αναφέρεται στο DeptID στον πίνακα Departments.