Middle
Εξηγήστε τον μηχανισμό σύνδεσης μέσω του πρωτεύοντος και του ξένου κλειδιού μεταξύ των πινάκων της νομικής οντότητας και της σύμβασης
sobes.tech AI
Απάντηση από AI
Σε σχεσιακές βάσεις δεδομένων, η σχέση μεταξύ των πινάκων "νομικό πρόσωπο" και "συμβάσεις" υλοποιείται συνήθως μέσω πρωτεύοντων και ξένων κλειδιών.
- Στον πίνακα "νομικό πρόσωπο" υπάρχει ένα πρωτεύον κλειδί (π.χ.,
id) που αναγνωρίζει μοναδικά κάθε νομικό πρόσωπο. - Στον πίνακα "συμβάσεις" υπάρχει ένα ξένο κλειδί (π.χ.,
juridical_person_id) που αναφέρεται στο πρωτεύον κλειδί του πίνακα "νομικό πρόσωπο".
Αυτό διασφαλίζει την ακεραιότητα των δεδομένων: κάθε σύμβαση σχετίζεται με ένα υφιστάμενο νομικό πρόσωπο. Κατά την ανάκτηση δεδομένων, μπορούν εύκολα να ληφθούν όλες οι συμβάσεις ενός συγκεκριμένου νομικού προσώπου μέσω ενός JOIN σε αυτά τα κλειδιά.
Παράδειγμα:
-- Πίνακας νομικό πρόσωπο
CREATE TABLE juridical_person (
id INT PRIMARY KEY,
name VARCHAR(255)
);
-- Πίνακας συμβάσεων
CREATE TABLE contract (
id INT PRIMARY KEY,
juridical_person_id INT,
contract_date DATE,
FOREIGN KEY (juridical_person_id) REFERENCES juridical_person(id)
);