Το Σχεσιακό οντέλο εδομένων Το Σ εισήχθηκε από τον Codd (970) Βασικά χαρακτηριστικά του Σ η βάση δεδομένων παριστάνεται σαν μια συλλογή από σχέσεις, όπου μια σχέση μοιάζει / παριστάνεται με έναν πίνακα κάθε γραμμή μιας σχέσης καλείται πλειάδα ή εγγραφή καιπεριέχειτιμές δεδομένων για τα γνωρίσματα που της ανήκουν κάθε στήλη μιας σχέσης αποτελεί ένα γνώρισμα ήπεδίοτο όνομα του οποίου περιλαμβάνεται στην πρώτη πλειάδα της σχέσης κάθε γνώρισμα παίρνει τιμές από ένα καθορισμένο πεδίο ορισμού παράδειγμα σχέσης: ΙΚΙΟΟΙ ΙΚΟΣ ΕΠΩΟ ΣΗ 4649735 ΗΗΤΡΙΟ ΙΚΟΛΟΣ ΘΗΩ 45, 56 ΘΗ 567945 ΠΡΣΟ ΡΙ ΙΚΗΣ, 7400 ΡΕΘΟ Το Σχεσιακό οντέλο εδομένων αρακτηριστικά μιας σχέσης Το Σ βασίζεται εξ ορισμού στις έννοιες των συνόλων, οπότε κάθε πλειάδα σε μια σχέση είναι μοναδική, δηλ., δενυπάρχουνδύοπλειάδεςμε τα ίδια δεδομένα στα επιμέρους γνωρίσματα ο ελάχιστος αριθμός γνωρισμάτων που ταυτοποιεί μια πλειάδα καλείται κλειδί της πλειάδας, π.χ., το γνώρισμα ΙΚΟΣ (του δικαιούχου) κάθε τιμή σε μια σχέση είναι ατομική, με την έννοια ότι δεν μπορεί να διασπαστεί στα πλαίσια του σχεσιακού μοντέλου επομένως, το Σ δε διαχειρίζεται φωλιασμένες σχέσεις, σύνθετα ή πλειότιμα γνωρίσματα άμεσα η διάταξη των πλειάδων δεν αποτελεί μέρος του ορισμού μιας σχέσης
Το Σχεσιακό οντέλο εδομένων ναπαράσταση οντοτήτων στο Σ οι οντότητες αναπαριστώνται με πλειάδες των σχέσεων (π.χ., ΙΚΙΟΟΣ) τα γνωρίσματά τους περιγράφονται με τα γνωρίσματα των πλειάδων (π.χ., ΙΚΟΣ, ΕΠΩΟ,, ΣΗ) ναπαράσταση συσχετίσεων στο Σ οι συσχετίσεις αναπαριστώνται με πλειάδες των σχέσεων (π.χ., ΙΚΙΩ) τα γνωρίσματά τους περιγράφονται με τα γνωρίσματα των πλειάδων (π.χ., ΗΕΡΟΗΙ κτήσης, κυριότητας) Σύνδεση των σχέσεων στο Σ αυτό επιτυγχάνεται με τις τιμές των κοινών γνωρισμάτων μεταξύ των σχέσεων (κλειδιά και ξένα κλειδιά) εφαρμογή καρτεσιανού γινομένου Το Σχεσιακό οντέλο εδομένων Η σύνδεση των σχέσεων, δηλαδή ένας συσχετισμός των δεδομένων που ανήκουν σε διαφορετικούς πίνακες, πραγματοποιείται με τις τιμές των κοινών γνωρισμάτων μεταξύ των πινάκων υτό σημαίνει ότι Όταν μια σχέση που έχει ως κλειδί το Akey συσχετίζεται με μια σχέση Β που έχει ως κύριο κλειδί το Bkey, τότε: Τοποθετείται στη σχέση Β (γενικά: σε μία από τις σχέσεις) ένα πεδίο AFkey που αντιστοιχεί στο κλειδί της σχέσης υτό το πεδίο παίρνει τιμές από το σύνολο τιμών του Akey και λέγεται ΞΕΟ ΚΛΕΙΙ Οι εγγραφές των δύο σχέσεων συσχετίζονται μέσω των τιμών του πεδίου αυτού ΦΣΙΚΟ ΠΡΟΣΩΠΟ ΚΤΕΕΙ
Το Σχεσιακό οντέλο εδομένων ΦΣΙΚΟ ΠΡΟΣΩΠΟ ΚΤΕΕΙ ΦΣΙΚΟ ΠΡΟΣΩΠΟ ΦΠ_key ΤΕΠΩΟ ΦΠ ΦΠ ΦΠ3 νδρέου νδρέας Γεωργίου Γεώργιος Βασιλείου Βασίλειος ΤΗΛ_Key T 80034567 HOT line T 69643456 Κινητό T3 07777777 Γραφείο T4 69543000 Σπίτι Το Σχεσιακό οντέλο εδομένων ΦΣΙΚΟ ΠΡΟΣΩΠΟ ΚΤΕΕΙ ΦΣΙΚΟ ΠΡΟΣΩΠΟ ΦΠ_key ΤΕΠΩΟ ΦΠ ΦΠ νδρέου νδρέας Γεωργίου Γεώργιος ΦΠ3 Βασιλείου Βασίλειος ΤΗΛ_Key ΦΠ T 80034567 HOT line ΦΠ3 T 69643456 Κινητό ΦΠ Στο ΣΕΣΙΚΟ ΟΤΕΛΟ μια συσχέτιση γίνεται μέσω κοινών τιμώνδεδομένων που ανήκουν και στους δύο πίνακες T3 T4 07777777 69543000 Γραφείο Σπίτι ΦΠ ΦΠ 3
Σχεσιακό οντέλο εδομένων και είκτες (pointers) ΦΣΙΚΟ ΠΡΟΣΩΠΟ ΦΠ_key ΤΕΠΩΟ είκτης στη θέση της συσχετιζόμενης εγγραφής xf000 ΦΠ νδρέου νδρέας xf000 ΦΠ Γεωργίου Γεώργιος xf0003 ΦΠ3 Βασιλείου Βασίλειος ΤΗΛ_Key ΦΠ T 80034567 HOT line xf0003 ιεύθυνση της θέσης της εγγραφής (δίσκος/μνήμη) T T3 T4 69643456 07777777 69543000 Κινητό Γραφείο Σπίτι xf000 xf000 xf000 Σε άλλα μοντέλα δεδομένων μια συσχέτιση γίνεται μέσω αναφοράς σε χαρακτηριστικά που αφορούν τη φυσική αποθήκευση των δεδομένων και Ε ανήκουν και στα δύο συσχετιζόμενα μέρη Το Σχεσιακό οντέλο εδομένων Κλειδιά υποψήφιο κλειδί κάθε γνώρισμα ή συνδυασμός γνωρισμάτων που ταυτοποιεί τις πλειάδες της σχέσης πρωτεύον κλειδί το υποψήφιο κλειδί που επιλέγεται για την ταυτοποίηση των πλειάδων της σχέσης (επιλέγεται αυτό με τα λιγότερα γνωρίσματα) ξένο κλειδί κάθε γνώρισμα ή συνδυασμός γνωρισμάτων μιας σχέσης που έχει το ίδιο πεδίο ορισμού με το κλειδί άλλης σχέσης 4
Περί κλειδιών Πρωτεύον κλειδί Ενα σύνολο από πεδία είναι πρωτεύον κλειδί όταν προσδιορίζει με μοναδικό τρόπο μια εγγραφή Η επιλογή ενός πρωτεύοντος κλειδιού είναι ζωτικής σημασίας για την ορθότητα, την ευκολία και τις επιδόσεις Ξένο κλειδί Ενα πεδίο που περιέχεται σε μια σχέση και είναι πρωτεύον κλειδί σε μια σχέση Β, λέγεται "ξένο κλειδί" μέσα στην. εν είναι απαραίτητο το όνομα του πεδίου να είναι το ίδιο στις σχέσεις και Β. QUIZ! Ενα κλειδί μπορεί να είναι ταυτόχρονα Πρωτεύον και Ξένο;;; αι Οχι Ξ/ Περί κλειδιών ΦΣΙΚΟ ΠΡΟΣΩΠΟ ΚΤΕΕΙ ΦΣΙΚΟ ΠΡΟΣΩΠΟ ΦΠ_key ΤΕΠΩΟ ΦΠ ΦΠ νδρέου νδρέας Γεωργίου Γεώργιος ΦΠ3 Βασιλείου Βασίλειος ΤΗΛ_Key ΦΠ T 80034567 HOT line ΦΠ3 T 69643456 Κινητό ΦΠ T3 07777777 Γραφείο ΦΠ T4 69543000 Σπίτι ΦΠ 5
Το Σχεσιακό οντέλο εδομένων Περιορισμοί δομής Περιορισμός κλειδιού τα υποψήφια κλειδιά μιας σχέσης πρέπει να είναι μοναδικά για κάθε πλειάδα Περιορισμός οντότητας η τιμή του κλειδιού δεν μπορεί να είναι μηδενική Περιορισμός του ξένου κλειδιού η τιμή του ξένου κλειδιού πρέπει να υπάρχει σαν τιμή του πρωτεύοντος κλειδιού στη σχέση αναφοράς, ή είναιμηδενική Το Σχεσιακό οντέλο εδομένων σχήματος μιας σχεσιακής Β για εφαρμογές κτηματολογίου ΙΚΙΟΟΙ ΙΚΟΣ ΕΠΩΟ ΣΗ ΙΚΙΩΤ ΚΕΚ ΙΚΙΟΟΣ ΗΕΡΟΗΙ ΓΕΩΤΕΙ ΚΕΚ Ο ΣΗ ΠΟΛΓΩ ΙΚΟΣ ΙΚΟΣ ΠΟ ΣΗΕΙΟ ΠΡΟΣ ΣΗΕΙΟ ΣΗΕΙ ΙΚΟΣ 6
Το Σχεσιακό οντέλο εδομένων σχήματος μιας σχεσιακής Β για εφαρμογές κτηματολογίου ΓΕΩΤΕΙ ΚΕΚ Ο ΣΗ 0.003.03.0.003.56 ΟΙΚΙΣΤΙΚΗ ΚΠΟΙΣΤΡΙΟ 3 Π3456 0.003.03.0.004.578 ΚΛΛΙΕΡΓΕΙ Γ. ΙΚΟΛΟ 4 Π3457 ΙΚΙΟΟΙ ΙΚΟΣ ΕΠΩΟ ΣΗ 4649735 ΗΗΤΡΙΟ ΙΚΟΛΟΣ ΘΗΩ 45, 56 ΘΗ 567945 ΠΡΣΟ ΡΙ ΙΚΗΣ, 7400 ΡΕΘΟ ΙΚΙΩΤ ΚΕΚ ΙΚΙΟΟΣ ΗΕΡΟΗΙ 0.003.03.0.003 4649735 60% 8-7-954 0.003.03.0.003 567945 40% 8-7-954 0.003.03.0.004 567945 00% -3-987 ΙΚΟΣ ΠΟ ΣΗΕΙΟ ΠΡΟΣ ΣΗΕΙΟ Γ34567 Σ56783 Σ56784 Γ34568 Σ56784 Σ56785 ΠΟΛΓΩ ΙΚΟΣ Π3456 Π3456 Π3456 Π3456 ΣΗΕΙ ΙΚΟΣ Σ56784 45678.34 8938.89 Σ56785 45685.56 8979.67 Γ34567 Γ34568 Γ34569 Γ34570 Εθνικό ετσόβιο Πολυτεχνείο Σχολή γρονόμων Τοπογράφων ηχανικών Βάσεις εδομένων Βασίλειος Βεσκούκης v.vescoukis@cs.ntua.gr ετάβαση από το μοντέλο οντοτήτων συσχετίσεων στο Σχεσιακό οντέλο εδομένων 7
πό το μοντέλο Ο-Σ στο Σ πεικόνιση του εννοιολογικού σχήματος (μοντέλο Ο-Σ) στο λογικό σχήμα (σχεσιακό μοντέλο) Βήμα ο για κάθε τύπο οντότητας δημιούργησε μια σχέση που περιλαμβάνει όλα τα απλά γνωρίσματα αναπαράστησε τα σύνθετα γνωρίσματα με τα στοιχειώδη γνωρίσματά τους αγνόησε τα παραγόμενα γνωρίσματα επέλεξε ένα υποψήφιο κλειδί σαν πρωτεύον κλειδί Βήμα ο για κάθε συσχέτιση : επέλεξε τη σχέση με την πλήρη συμμετοχή και εισήγαγε σε αυτήν το κλειδί της άλλης σχέσης σαν ξένο κλειδί επίσης εισήγαγε στη σχέση όλα τα γνωρίσματα της συσχέτισης Πλήρης συμμετοχή: Ολαταστοιχείατηςσχέσηςσυμμετέχουνστησυσχέτιση Πχ: «δεν υπάρχει γεωτεμάχιο που να μην αντιστοιχίζεται με κάποιο πολύγωνο» «εν υπάρχει αριθμός τηλεφώνου που να μην αντιστοιχεί σε κάποιο πρόσωπο» Προσοχή στην κατανόηση του πεδίου του προβλήματος πό το μοντέλο Ο-Σ στο Σ πεικόνιση του εννοιολογικού σχήματος (μοντέλο Ο-Σ) στο λογικό σχήμα (σχεσιακό μοντέλο) Βήμα 3ο για κάθε συσχέτιση : επέλεξε τη σχέση με τη συμμετοχή N καιεισήγαγεσεαυτήν σαν ξένο κλειδί το πρωτεύον κλειδί της σχέσης με συμμετοχή επίσης εισήγαγε στη σχέση όλα τα γνωρίσματα της συσχέτισης Βήμα 4ο για κάθε συσχέτιση : δημιούργησε μια νέα σχέση εισήγαγεσεαυτήνταπρωτεύοντακλειδιάτωνδύοσχέσεωνσανξένακλειδιά επίσης εισήγαγε στη σχέση όλα τα γνωρίσματα της συσχέτισης Βήμα 5ο για κάθε πλειότιμο γνώρισμα δημιούργησε μια νέα σχέση εισήγαγε σε αυτήν το γνώρισμα και το κλειδί της σχέσης που το περιέχει 8
Βήμα ο για κάθε τύπο οντότητας δημιούργησε μια σχέση που περιλαμβάνει όλα τα απλά γνωρίσματα αναπαράστησε τα σύνθετα γνωρίσματα με τα στοιχειώδη γνωρίσματά τους αγνόησε τα παραγόμενα γνωρίσματα επέλεξε ένα υποψήφιο κλειδί σαν πρωτεύον κλειδί ΗΕΡΟ ΙΚΙΟΟΣ ΕΠΩΟ ΣΗΕΙΟ ΗΕΡΟ ΙΚΙΟΟΣ ΕΠΩΟ ΣΗΕΙΟ ΣΗΕΙ ΙΚΙΟΟΙ.ΣΗΕΙΟ.ΙΚΙΟΟ. ΕΠΩΟ. ΣΗ ΓΕΩΤΕΙ.Σ.ΓΕΩΤΕ. ΣΗ. ΠΟΛΓΩ.. 9
Βήμα ο για κάθε συσχέτιση : επέλεξε τη σχέση με την πλήρη συμμετοχή και εισήγαγε σε αυτήν το κλειδί της άλλης σχέσης σαν ξένο κλειδί επίσης εισήγαγε στη σχέση όλα τα γνωρίσματα της συσχέτισης ΗΕΡΟ ΙΚΙΟΟΣ ΕΠΩΟ ΣΗΕΙΟ ΓΕΩΤΕΙ ΠΟΛΓΩ.ΓΕΩΤΕ. ΣΗ.. ΓΕΩΤΕΙ.ΓΕΩΤΕ. ΣΗ ΣΗ ΣΤΙΓΙΟΤΠΟ ΓΕΩΤΕΙ.ΓΕΩΤΕ. Λ33 Β34456 ΣΗ ΛΦΕΙΟ ΠΗΕΙΟ 50 000 ΓΡ ΟΙΚ 55 77 ΠΟΛΓΩ. 54 55 56 77..34 33.. Β45. 0
Βήμα ο (συνέχεια) για κάθε συσχέτιση : επέλεξε τη σχέση με την πλήρη συμμετοχή και εισήγαγε σε αυτήν το κλειδί της άλλης σχέσης σαν ξένο κλειδί επίσης εισήγαγε στη σχέση όλα τα γνωρίσματα της συσχέτισης ΗΕΡΟ ΙΚΙΟΟΣ ΕΠΩΟ ΣΗΕΙΟ Πλήρης συμμετοχή ΣΗΕΙΟ.Σ ΣΗΕΙ.ΣΗΕΙΟ.Σ ΣΗΕΙΟ ΣΗΕΙΟ ΣΗ.Σ Γ0 Γ3 Γ3 ΣΗΕΙΟ Β ΣΗΕΙΟ Γ ΣΗΕΙ.ΣΗΕΙΟ Β Γ Ε 34 3 945 83 ΣΤΙΓΙΟΤΠΟ 3,33 3,3,3 34,000 34,0
Βήμα 3ο για κάθε συσχέτιση : επέλεξε τη σχέση με τη συμμετοχή N και εισήγαγε σε αυτήν σαν ξένο κλειδί το πρωτεύον κλειδί της σχέσης με συμμετοχή επίσης εισήγαγε στη σχέση όλα τα γνωρίσματα της συσχέτισης ΗΕΡΟ ΙΚΙΟΟΣ ΕΠΩΟ ΣΗΕΙΟ Συμμετοχή "" ΠΟΛΓΩ...Σ ΣΗΕΙΟ ΣΗΕΙΟ.Σ ΣΗΕΙΟ ΣΗΕΙΟ ΣΗ ΣΤΙΓΙΟΤΠΟ ΠΟΛΓΩ. 54 55 56 77..34 33.. Β45..Σ Γ0 Γ3 Γ3 56 56 56 ΣΗΕΙΟ Β ΣΗΕΙΟ Γ ΣΦΩ Ε ΤΟ ΤΟ ΟΡΙΣΟ ΤΗΣ ΣΕΣΗΣ, ΙΣΕΙ ΟΤΙ Ι ΗΚΕΙ ΣΕ ΚΡΙΒΩΣ Ε
Βήμα 4ο για κάθε συσχέτιση : δημιούργησε μια νέα σχέση εισήγαγε σε αυτήν τα πρωτεύοντα κλειδιά των δύο σχέσεων σαν ξένα κλειδιά επίσης εισήγαγε στη σχέση όλα τα γνωρίσματα της συσχέτισης ΗΕΡΟ ΙΚΙΟΟΣ ΕΠΩΟ ΣΗΕΙΟ ΕΠΩΟ ΗΕΡΟ ΙΚΙΟΟΣ ΙΚΙΟΟΙ.ΙΚΙΟΟ ΕΠΩΟ ΣΗ ΓΕΩΤΕΙ.ΓΕΩΤΕ. ΣΗ ΙΚΙΟΟΣ ΗΕΡΟΗΙ ΣΗ ΙΚΙΟΟΙ.ΙΚΙΟΟ Τ345 Τ3456 87654 ΕΠΩΟ ΒΣΙΛΕΙΟ ΡΕΟ ΓΕΩΡΓΙΟ ΒΣΙΛ ΡΕ ΓΕΩΡΓ ΣΗ ΠΤΗΣΙΩ ΙΚΗΣ 3 ΒΟΛΗΣ ΓΕΩΤΕΙ.ΓΕΩΤΕ. Λ33 Β34456 ΣΗ ΛΦΕΙΟ ΠΗΕΙΟ 50 000 ΣΤΙΓΙΟΤΠΟ ΓΡ 55 ΟΙΚ 77 ΙΚΙΟΟΣ ΗΕΡΟΗΙ Τ345 Λ33 00..00 45/00 Τ345 Β34456 0.3.964 34/964 87654 Β34456 80.9.970 55/970 3
ιόρθωση του σχήματος Η συσχέτιση μεταξύ γραμμής - πολυγώνου έχει πολλαπλότητα : Εκτέλεση του 4ου βήματος για τις σχέσεις γραμμή - πολύγωνο ΗΕΡΟ ΙΚΙΟΟΣ ΕΠΩΟ ΣΗΕΙΟ ΠΟΛΓΩ...Σ ΣΗΕΙΟ ΣΗΕΙΟ ΠΟΛΓΩ_ ΣΗ ΣΤΙΓΙΟΤΠΟ ΠΟΛΓΩ. 54 55 56 77..34 33.. Β45. ΠΟΛΓΩ_ 54 Γ0 54 Γ3 54 Γ3 55 Γ3.Σ Γ0 Γ3 Γ3 ΣΗΕΙΟ Β ΣΗΕΙΟ Γ 55 Γ0 4
Οι σχέσεις, όπως προέκυψαν από την εφαρμογή των βημάτων μετάβασης από το μοντέλο οντοτήτων - συσχετίσεων στο σχεσιακό μοντέλο δεδομένων ΙΚΙΟΟΙ.ΙΚΙΟΟ ΕΠΩΟ ΣΗ ΙΚΙΟΟΣ ΗΕΡΟΗΙ ΓΕΩΤΕΙ.ΓΕΩΤΕ. ΣΗ ΠΟΛΓΩ_ ΠΟΛΓΩ.. ΣΗΕΙ.Σ ΣΗΕΙΟ ΣΗΕΙΟ.ΣΗΕΙΟ (τέλος!) ΙΚΙΟΟΙ.ΙΚΙΟΟ ΕΠΩΟ ΣΗ Τ345 ΒΣΙΛΕΙΟ ΒΣΙΛ ΠΤΗΣΙΩ ΙΚΙΟΟΣ ΗΕΡΟΗΙ Τ3456 ΡΕΟ ΡΕ ΙΚΗΣ 3 Τ345 Λ33 00..00 45/00 87654 ΓΕΩΡΓΙΟ ΓΕΩΡΓ ΒΟΛΗΣ Τ345 Β34456 0.3.964 34/964 87654 Β34456 80.9.970 55/970 ΠΟΛΓΩ. 54 55 56 77..34 33.. Β45. ΓΕΩΤΕΙ.ΓΕΩΤΕ. Λ33 Β34456 ΣΗ ΛΦΕΙΟ ΠΗΕΙΟ 50 000 ΓΡ ΟΙΚ 55 77 ΠΟΛΓΩ_ ΣΗΕΙ.ΣΗΕΙΟ 54 Γ0 34 3,33 54 Γ3.Σ ΣΗΕΙΟ ΣΗΕΙΟ Β 3,3 54 Γ3 Γ0 Γ Γ 3,3 55 Γ3 Γ3 945 34,000 55 Γ0 Γ3 Β Ε 83 34,0 5
6 ΣΗΕΙΟ ΙΚΙΟΟΣ ΕΠΩΟ ΗΕΡΟ...ΣΗΕΙΟ ΣΗΕΙΟ ΣΗΕΙΟ.Σ ΣΗ.ΓΕΩΤΕ. ΓΕΩΤΕΙ ΣΗ ΕΠΩΟ.ΙΚΙΟΟ ΙΚΙΟΟΙ ΗΕΡΟΗΙ ΙΚΙΟΟΣ ΠΟΛΓΩ_ ΣΗΕΙ ΠΟΛΓΩ