Σχεσιακό Μοντέλο Δεδομένων

Σχετικά έγγραφα
Ένας απλός τρόπος αναπαράστασης δεδομένων: ένας διδιάστατος πίνακας που λέγεται σχέση Γνωρίσματα

Ένας απλός τρόπος αναπαράστασης δεδομένων: ένας διδιάστατος πίνακας που λέγεται σχέση Γνωρίσματα

Βάσεις Δεδομένων : Σχεσιακό Μοντέλο 1. Ένας απλός τρόπος αναπαράστασης δεδομένων: ένας διδιάστατος πίνακας που λέγεται σχέση.

Σχεδιασµός µιας Β. Ένας απλός τρόπος αναπαράστασης δεδοµένων: ένας διδιάστατος πίνακας που λέγεται σχέση Γνωρίσµατα

Σχεσιακό Μοντέλο Περιορισμοί Μετατροπή ER σε Σχεσιακό Παράδειγμα.. Εργαστήριο Βάσεων Δεδομένων. Relational Model

Σχεδιασμός μιας Β : Βήματα

Το Σχεσιακό Μοντέλο. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Copyright 2007 Ramez Elmasri and Shamkant B. Navathe Ελληνική Έκδοση Δίαυλος Επιμέλεια Μ.Χατζόπουλος Διαφάνεια 5-1

Σχεδιασμός μιας εφαρμογής ΒΔ: Βήματα. 1. Συλλογή και Ανάλυση Απαιτήσεων(requirement analysis)

Κεφάλαιο 5. Το Σχεσιακό Μοντέλο Δεδομένων και Περιορισμοί Σχεσιακών Βάσεων Δεδομένων

Εισαγωγή. Σχεδιασµός µιας Β

Εργαστήριο Βάσεων Δεδομένων. Relational Model Σχεσιακό Μοντέλο

Σχεσιακό Μοντέλο. Εισαγωγή. Βάσεις εδοµένων : Σχεσιακό Μοντέλο 1

Σχεσιακό Μοντέλο. Σχεδιασμός Βάσεων Δεδομένων Μάθημα 2 ο Μαρία Χαλκίδη

Οργάνωση Βάσεων Βιοϊατρικών Δεδομένων Εξόρυξη Γνώσης Βιοϊατρικών Δεδομένων. Σεμινάριο 2: Εισαγωγή στις Βάσεις Δεδομένων

Βάσεις δεδομένων. (3 ο μάθημα) Ηρακλής Βαρλάμης

Βάσεις Δεδομένων. Σχεσιακό Μοντέλο Μετατροπή Διαγράμματος Οντοτήτων Συσχετίσεων (E-R) σε σχεσιακό. Φροντιστήριο 3 ο

Το Σχεσιακό Μοντέλο. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Σχεσιακή Άλγεβρα. Παύλος Εφραιμίδης. Βάσεις Δεδομένων Σχεσιακή Άλγεβρα 1

Απεικόνιση Διαγράμματος Οντοτήτων-Συσχετίσεων σε Σχεσιακό Μοντέλο Δεδομένων

Διάγραμμα Οντοτήτων - Συσχετίσεων

Σχεσιακή Άλγεβρα. Συνολοθεωρητικές Πράξεις. Εκφράσεις. Ειδικές Πράξεις. Θεμελίωση της Σχεσιακού Μοντέλου Δεδομένων. Σχεσιακός Λογισμός

Μοντέλο Οντοτήτων-Συσχετίσεων

#5. Σχεσιακό Μοντέλο

Απεικόνιση Διαγράμματος Οντοτήτων-Συσχετίσεων σε Σχεσιακό Μοντέλο Δεδομένων


Κανονικοποίηση. Σημασιολογία Γνωρισμάτων. Άτυπες Οδηγίες. Παράδειγμα. Αξιολόγηση Σχεσιακών Σχημάτων ΒΔ. Περιττές Τιμές και Ανωμαλίες Ενημέρωσης

Kεφ.2: Σχεσιακό Μοντέλο (επανάληψη) Κεφ.6.1: Σχεσιακή Άλγεβρα

Μετατροπή Σχήματος Ο/Σ σεσχεσιακό

Διάλεξη 06: Σχεσιακό Μοντέλο I (Relational Data Model) Διδάσκων: Παναγιώτης Ανδρέου

Βάσεις Δεδομένων (Databases)

Βάσεις εδοµένων. Συνολοθεωρητικές Πράξεις. Ειδικές Πράξεις. Εκφράσεις. Θεµελίωση της Σχεσιακού Μοντέλου εδοµένων. Σχεσιακή Άλγεβρα Σχεσιακός Λογισµός

Μετατροπή Σχήματος Ο/Σ σεσχεσιακό

Κεφάλαιο 4 Σχεδίαση Βάσεων Δεδομένων

Διάλεξη 07: Σχεσιακό Μοντέλο II (Relational Data Model) Διδάσκων: Παναγιώτης Ανδρέου

Department of Computer Science University of Cyprus. EPL342 Databases. Lecture 8: RM II. Relational Model. (Chapter )

Συναρτησιακές Εξαρτήσεις και Κανονικοποίηση

Εισαγωγή στην πληροφορική

Μοντέλο Οντοτήτων-Συσχετίσεων

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ασκήσεις και ερωτήσεις

Μετατροπή Σχήματος Ο/Σ σε Σχεσιακό

Μοντέλο Οντοτήτων-Συσχετίσεων

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ - ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΣΒΔ - ΕΙΣΑΓΩΓΗ ΣΤΟ ΜΟΝΤΕΛΟ ΟΝΤΟΤΗΤΩΝ ΣΥΣΧΕΤΙΣΕΩΝ ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ

Εισαγωγή στις Βάσεις Δεδομζνων II

Πρόλογος Μέρος Ι Εισαγωγή στα συστήματα βάσεων δεδομένων Μια βόλτα στις βάσεις δεδομένων...25

Κανονικοποίηση. Παύλος Εφραιμίδης. Βάσεις Δεδομένων Κανονικοποίηση 1

ΕΣΔ 232: ΟΡΓΑΝΩΣΗ ΔΕΔΟΜΕΝΩΝ ΣΤΗ ΚΟΙΝΩΝΙΑ ΤΗΣ ΠΛΗΡΟΦΟΡΙΑΣ. Ακαδημαϊκό Έτος , Εαρινό Εξάμηνο. Εργαστηριακή Άσκηση 2 24/01/2012

Θεωρία Κανονικοποίησης

Σχεδιασµός µιας Β. Εισαγωγή. Μετατροπή σε σχεσιακό -> είσοδο σε ένα Σ Β. Εισαγωγή. Ιδέες Ο/Σ Σχέσεις Σχεσιακό Σ Β

Βάσεις δεδομένων. (4 ο μάθημα) Ηρακλής Βαρλάμης

Η εταιρεία είναι οργανωµένη σε τµήµατα Κάθε ΤΜΗΜΑένα όνοµα, κωδικό και έναν εργαζόµενο που διευθύνει το τµήµα. Αποθηκεύεται η ηµεροµηνία που ανέλαβε

Διδάσκοντες: Δ. Φωτάκης, Δ. Σούλιου Επιμέλεια διαφανειών: Δ. Φωτάκης. Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών

Μετατροπή Σχήµατος Ο/Σ σε Σχεσιακό

Μοντέλο Οντοτήτων-Συσχετίσεων


Σχέσεις. Διμελής Σχέση. ΣτοΊδιοΣύνολο. Αναπαράσταση

Πληροφοριακού Συστήματος Ενημέρωσης Καιρικών Συνθηκών

Βάσεις Δεδομένων (Databases)

Ορισμοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL

ΣΧΕΣΙΑΚΕΣ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ

H SQL είναι η γλώσσα για όλα τα εμπορικά σχεσιακά συστήματα διαχείρισης βάσεων δεδομένων

Σχέσεις. ιδάσκοντες:. Φωτάκης,. Σούλιου Επιμέλεια διαφανειών:. Φωτάκης. Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών

Ορισμοί Σχεσιακού Μοντέλου και (απλές)τροποποιήσεις Σχέσεων στην SQL. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Ορισμοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL

Σχεσιακή Άλγεβρα και Σχεσιακός Λογισμός. Σχεσιακή Άλγεβρα Σχεσιακός Λογισμός

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ. Κανόνες μετατροπής Διαγράμματος Οντοτήτων-Συσχετίσεων σε Σχεσιακό Σχήμα. Δρ. Βαγγελιώ Καβακλή ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ,

Εργαστήριο Βάσεων Δεδομένων. Entity-Relationship Diagram (ER)

Μετατροπή Σχήματος Ο/Σ σε Σχεσιακό Σχήμα. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Βάσεις δεδομένων. (2 ο μάθημα) Ηρακλής Βαρλάμης

Εισαγωγή στις βάσεις δεδομένων - Η ανατομία μιας βάσης δεδομένων

Κανονικοποίηση. Άτυπες Οδηγίες. Παράδειγµα. Αξιολόγηση Σχεσιακών Σχηµάτων Β. Περιττές Τιµές και Ανωµαλίες Ενηµέρωσης

Μοντέλο Οντοτήτων-Συσχετίσεων

Θέματα ανακεφαλαίωσης

Βάσεις Δεδομένων. Σταύρος Βαλσαμίδης Βάσεις Δεδομένων Διάγραμμα Ο-Σ 1

ΗΥ360 - Αρχεία και Βάσεις Δεδομένων Χειμερινό Eξάμηνο Μοντέλο Οντοτήτων-Συσχετίσεων Σχεσιακό Μοντέλο

Το Σχεσιακό Μοντέλο. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Βάσεις Δεδομένων. Εισαγωγή Ανάλυση Απαιτήσεων. Φροντιστήριο 1 ο

Μετατροπή Σχήματος Ο/Σ σε Σχεσιακό Σχήμα. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

2. Το Μοντέλο Οντοτήτων- Συσχετίσεων

Εισαγωγή στις Βάσεις Δεδομένων (ΒΔ)

ΘΕ ΠΛΗ11 2η ΓΡΑΠΤΗ ΕΡΓΑΣΙΑ (ΓΕ2) ΕΝΔΕΙΚΤΙΚΗ ΕΠΙΛΥΣΗ

καλών σχεσιακών σχημάτων

ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ. Relational Model Μαθ. #9

Μετατροπή Σχήματος Ο/Σ σε Σχεσιακό Σχήμα. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

ΘΕΜΑΤΑ. Θέμα 1 ο Σύμφωνα με τους παραπάνω πίνακες και τη θέση που έχουν τα ξένα κλειδιά βρείτε τους


Βάσεις Δεδομένων και Ευφυή Πληροφοριακά Συστήματα Επιχειρηματικότητας. 2 ο Μάθημα: Βασικά Θέματα Βάσεων Δεδομένων. Δρ. Κωνσταντίνος Χ.

ιµελής Σχέση ιατεταγµένο ζεύγος (α, β): ύο αντικείµενα (όχι κατ ανάγκη διαφορετικά) σε καθορισµένη σειρά. Γενίκευση: διατεταγµένη τριάδα (α, β, γ), δι

Βάσεις εδοµένων. Βασίλειος Βεσκούκης, Εµµ. Στεφανάκης. Το µοντέλο Οντοτήτων Συσχετίσεων Το Σχεσιακό Μοντέλο εδοµένων

Κανονικές Μορφές. Βάσεις Δεδομένων : Κανονικές Μορφές. ηλαδή, i = 1,.., n R i R. Σύντομη επανάληψη αποσύνθεσης.

Πληροφορική 2. Βάσεις Δεδομένων (Databases)

ER Diagram Συσχετίσεις Ασθενείς Οντότητες Παράδειγμα ER.. Εργαστήριο Βάσεων Δεδομένων. Entity-Relationship Diagram (ER)

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι. Ενότητα 2: Μοντελο Συσχετίσεων Οντοτήτων, Μελέτη Περίπτωσης: Η βάση δεδομένων των CD

Βάσεις Δεδομένων Εισαγωγή

Βάσεις Δεδομένων. Μιχάλης Μαλιάππης

Βάσεις Δεδομένων Ευαγγελία Πιτουρά 2. Εννοιολογικός Σχεδιασμός Βάσεων εδομένων (με χρήση του Μοντέλου Οντοτήτων/Συσχετίσεων)


Επεξεργασία Ερωτήσεων

Βάσεις Δεδομένων. Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα

Βάση Δεδομένων: συλλογή από σχετιζόμενα δεδομένα Σύστημα Διαχείρισης Βάσεων Δεδομένων (ΣΔΒΔ): λογισμικό για δημιουργία και χρήση μιας βάσης δεδομένων

Transcript:

Σχεσιακό Μοντέλο Δεδομένων Παύλος Εφραιμίδης Βάσεις Δεδομένων Σχεσιακό Μοντέλο Δεδομένων 1

Μοντέλα Δεδομένων Μοντέλα Δεδομένων Σχεσιακό Ιεραρχικό Δικτυακό Tο κυρίαρχο μοντέλο δεδομένων στις σύγχρονες βάσεις δεδομένων είναι το ΣΧΕΣΙΑΚΟ (και επεκτάσεις του) Βάσεις Δεδομένων Σχεσιακό Μοντέλο Δεδομένων 2

Σχεσιακό Μοντέλο Δεδομένων Το σχεσιακό μοντέλο δεδομένων προτάθηκε από Ted Codd της IBM Research το 1970 Σχέση: Η βάση του μοντέλου είναι η την έννοια της μαθηματικής σχέσης, που μοιάζει κατά κάποιον τρόπο με έναν πίνακα τιμών Η θεωρητική του βάση είναι η θεωρία συνόλων και ο κατηγορηματικός λογισμός πρώτης τάξης Γνώρισε άμεσα μεγάλη διάδοση λόγω απλότητας μαθηματικής θεμελίωσης Βάσεις Δεδομένων Σχεσιακό Μοντέλο Δεδομένων 3

Τι θα πούμε Θα μιλήσουμε για χαρακτηριστικά του μοντέλου, τους περιορισμούς του, Για τη μαθηματική θεμελίωση του σχεσιακού μοντέλου με σχεσιακή άλγεβρα Βάσεις Δεδομένων Σχεσιακό Μοντέλο Δεδομένων 4

ΕΝΝΟΙΕΣ του Σχεσιακού Μοντέλου (1) Μια βάση δεδομένων παριστάνεται ως ένα σύνολο από σχέσεις. Τι είναι μια σχέση: Με απλά λόγια, μια σχέση μοιάζει με έναν πίνακα Κάθε γραμμή του πίνακα παριστάνει μια συλλογή από τιμές δεδομένων που σχετίζονται με κάποιον τρόπο μεταξύ τους. Βάσεις Δεδομένων Σχεσιακό Μοντέλο Δεδομένων 5

ΕΝΝΟΙΕΣ του Σχεσιακού Μοντέλου (2) Οι τιμές αυτές μπορεί να περιγράφουν μια οντότητα ή μια συσχέτιση του πραγματικού κόσμου. Δίνουμε όνομα στον πίνακα και στις στήλες του ώστε να είναι ευκολότερη η ερμηνεία του. Παράδειγμα: Πίνακας ΦΟΙΤΗΤΗΣ Όνομα Σχέσης: ΦΟΙΤΗΤΗΣ Γνωρίσματα: Όνομα, ΑΜ, Τηλ, Έτος,.. Βάσεις Δεδομένων Σχεσιακό Μοντέλο Δεδομένων 6

Σχέση Γνώρισμα μιας Σχέσης: Μια στήλη του πίνακα Όλες οι τιμές της στήλης είναι του ιδίου τύπου Ο τύπος αυτό λέγεται πεδίο ορισμού Πλειάδα μιας Σχέσης: Μια γραμμή του πίνακα Βάσεις Δεδομένων Σχεσιακό Μοντέλο Δεδομένων 7

Πεδίο Ορισμού Πεδίο ορισμού D (Domain): Ένα σύνολο από ατομικές τιμές Παραδείγματα πεδίων ορισμού: Βαθμολογία ενός Φοιτητή: 0,..,10 Ηλικίες Εργαζόμενων: 18,..,70 Όνομα: Το σύνολο όλων των ονομάτων Τοπικοί Αριθμοί Τηλεφώνου: 5-ψήφιοι Ελληνικοί Αριθμοί τηλεφώνου: 10-ψήφιοι Το πεδίο ορισμού ως περιορισμός: Το πεδίο ορισμού είναι ένας από τους 4 βασικούς περιορισμούς του Σχεσιακού Μοντέλου Δεδομένων Βάσεις Δεδομένων Σχεσιακό Μοντέλο Δεδομένων 8

Σχήμα μιας Σχέσης ΣΧΗΜΑ ΣΧΕΣΗΣ: Όνομα Σχέσης και Γνωρίσματα R(A1,..,An) Το γνώρισμα Ai είναι το όνομα ενός ρόλου για ένα πεδίο ορισμού D στο σχήμα σχέσης R D = dom(ai) πεδίο ορισμού Σχήμα Σχέσης Ένα σχήμα σχέσης περιγράφει μια σχέση Το R είναι το όνομα της σχέσης Βαθμός σχέσης είναι το πλήθος των γνωρισμάτων. Το σχήμα της σχέσης καθορίζει το είδος των δεδομένων της συγκεκριμένης σχέσης (πίνακα) ΣΧΕΣΗ: Τα δεδομένα Ένα σύνολο από n-πλειάδες του σχήματος σχέσης ΠΛΕΙΑΔΑ: Μια διατεταγμένη λίστα από n τιμές, από τα αντίστοιχα πεδία ορισμού Βάσεις Δεδομένων Σχεσιακό Μοντέλο Δεδομένων 9

ΜΑΘΗΜΑΤΙΚΟΣ ΟΡΙΣΜΟΣ Σχέση r(r) είναι μια μαθηματική σχέση βαθμού n στα πεδία ορισμού dom(a1), dom(a2),..,dom(an) που είναι υποσύνολο του καρτεσιανού γινομένου των πεδίων ορισμού που ορίζουν την R: r(r) (dom(a1) x dom(a2) x.. x dom(an)) Συνολικόςαριθμόςπλειάδωντουκαρτεσιανούγινομένου: dom(a1) * dom(a2) *.. * dom(an) Το πεδίο ορισμού Di Μπορεί να είναι άπειρο Μπορεί να επαναλαμβάνεται στο R Περιέχει υποχρεωτικά μα ειδική τιμή NULL Βάσεις Δεδομένων Σχεσιακό Μοντέλο Δεδομένων 10

Σχέση και Σχήμα Σχέσης Η Σχέση είναι ένα υποσύνολο το συνόλου όλων των πιθανών συνδυασμών αντιστοιχεί στα δεδομένα του πίνακα Η σχέση μεταβάλλεται όμως το σχήμα σχέσης R γενικά δεν αλλάζει παρά μόνο σπάνια, πχ. πρόσθεση νέου γνωρίσματος αντιστοιχεί στο σχήμα (στα χαρακτηριστικά) των πινάκων Βάσεις Δεδομένων Σχεσιακό Μοντέλο Δεδομένων 11

Χαρακτηριστικά των Σχέσεων Η Σχέση είναι ένα σύνολο πλειάδων Τα σύνολα δεν έχουν διάταξη, άρα Δεν μας ενδιαφέρει η διάταξη των πλειάδων (πρακτικά θα έχουν αποθηκευτεί με κάποια σειρά) Οι πλειάδες μιας σχέσης διαφέρουν μεταξύ τους (μοναδικότητα) Μπορούμε όταν παρουσιάζουμε μια σχέση να διατάσσουμε τις πλειάδες ως προς κάποιο γνώρισμα, πχ. Όνομα ή ΑΜ κτλ ΠΛΕΙΑΔΑ: Διατεταγμένη λίστα n-τιμών Άρα έχει σημασία η διάταξη των τιμών σε μια πλειάδα. Βέβαια σε λογικό επίπεδο μας απασχολεί απλά η σωστή αντιστοιχία ΤΙΜΗΣ-> στήλη-γνώρισμα Βάσεις Δεδομένων Σχεσιακό Μοντέλο Δεδομένων 12

Ατομικές Τιμές (1) Ατομικές Τιμές: Κάθε τιμή σε μια πλειάδα είναι ΑΤΟΜΙΚΗ, δηλαδή δεν επιτρέπεται υποδιαίρεσή της σε συστατικά στοιχεία ΠΡΟΒΛΗΜΑ για το Διάγραμμα ΟΣ: Σύνθετα και Πλειότιμα γνωρίσματα δεν μπορούν να παρασταθούν αυτούσια Αντιμετώπιση: Μεγάλο μέρος της θεωρίας του σχεσιακού μοντέλου έχει κατά νου αυτήν την υπόθεση, που ονομάζεται ΥΠΟΘΕΣΗ ΠΡΩΤΗΣ ΚΑΝΟΝΙΚΗΣ ΜΟΡΦΗΣ Λύσεις: Σύνθετα Γνωρίσματα: Με πολλά απλά γνωρίσματα. Πλειότιμα Γνωρίσματα: Με ξεχωριστή σχέση Βάσεις Δεδομένων Σχεσιακό Μοντέλο Δεδομένων 13

Ατομικές Τιμές (2) Διάγραμμα Ο-Σ: Προσοχή, στο διάγραμμα Ο- Σμπορούμεναταχρησιμοποιούμεκανονικά! ΌτανέρθειηώρανααπεικονισθείτοδιάγραμμαΟΣ σε σχεσιακό σχήμα, τότε κάνουμε ότι μετατροπές απαιτούνται Τιμή NULL: Όταν κάποιες τιμές δεν έχουν νόημα σε μια πλειάδα ή είναι άγνωστες: Τιμή NULL Βάσεις Δεδομένων Σχεσιακό Μοντέλο Δεδομένων 14

Ερμηνεία μιας Σχέσης Δήλωση ή βεβαίωση! Για παράδειγμα το Σχήμα Σχέσης ΦΟΙΤΗΤΗΣ δηλώνει ότι κάθεοντότηταφοιτητησέχειαυτάταγνωρίσματα ΠΛΕΙΑΔΑ: Η ύπαρξη μιας πλειάδας δηλώνει ότι ο συγκεκριμένος φοιτητής υπάρχει, είναι ΓΕΓΟΝΟΣ Οντότητες και Συσχετίσεις: Το σχεσιακό μοντέλο αναφέρεται ομοιόμορφα σε οντότητες και συσχετίσεις του Διαγράμματος Οντοτήτων-Συσχετίσεων ΚΑΤΗΓΟΡΗΜΑ (Μαθηματική Λογική): Ένα σχήμα σχέσης μπορεί να ερμηνευτεί ως κατηγόρημα (PREDICATE): Οιτιμέςκάθεπλειάδεςερμηνεύονταιωςοιτιμέςπουικανοποιούν το κατηγόρημα ΗερμηνείααυτήείναιχρήσιμηγιατηνPROLOG (λογικό προγραμματισμό, κτλ.) Βάσεις Δεδομένων Σχεσιακό Μοντέλο Δεδομένων 15

Συμβολισμοί του Σχεσιακού Μοντέλου Σχήμα σχέσης R βαθμού n: R(A1,A2,..,An) n-πλειάδα t = <v1,v2,..,vn> t[ai], t.ai = vi στην πλειάδα t ΦΟΙΤΗΤΗΣ: Σχέση ΦΟΙΤΗΤΗΣ(Όνομα,ΑΜ,..) Σχήμα Σχέσης Όνομα Γνωρισμάτων από τη σχέση: ΦΟΙΤΗΤΗΣ.Όνομα, ΦΟΙΤΗΤΗΣ.ΑΜ,.. Παράδειγμα: t=<"γιάννης Παπαδόπουλος", 255, 05410-12345> t(όνομα) = t(αμ) = t(όνομα, ΑΜ) = Βάσεις Δεδομένων Σχεσιακό Μοντέλο Δεδομένων 16

ΠΕΡΙΟΡΙΣΜΟΙ στο Σχεσιακό Μοντέλο 4 βασικοί περιορισμοί: Περιορισμοί στο πεδίο ορισμού Περιορισμοί κλειδιού Περιορισμοί ακεραιότητας οντοτήτων Περιορισμοί αναφορικής ακεραιότητας Βάσεις Δεδομένων Σχεσιακό Μοντέλο Δεδομένων 17

Περιορισμός Πεδίου Ορισμού Η τιμή κάθε γνωρίσματος πρέπει να είναι μια ατομική τιμή από το πεδίο ορισμού. Συνηθισμένοι τύποι πεδίων ορισμού: short integer, integer, long integer float, double precision float Χαρακτήρες Συμβολοσειρές σταθερού και μεταβλητού μήκους Ημερομηνία, Ώρα,.. Θα εξετάσουμε το θέμα του πεδίου ορισμού και κατά την παρουσίαση της SQL Βάσεις Δεδομένων Σχεσιακό Μοντέλο Δεδομένων 18

Περιορισμοί κλειδιού Κάθε σχέση (πίνακας) είναι ένα σύνολο πλειάδων (γραμμών) Τα στοιχεία ενός (μαθηματικού) συνόλου είναι διακριτά Επομένως: Οι πλειάδες μιας σχέσης διαφέρουν υποχρεωτικά μεταξύ τους Περιορισμός Κλειδιού: Σε κάθε σχήμα σχέσης R συνήθως υπάρχουν υποσύνολα γνωρισμάτων τέτοια ώστε: Κανένα ζευγάρι πλειάδων να μην μπορεί να έχει τις ίδιες τιμές σε όλααυτάταγνωρίσματα Έστω SK ένα τέτοιο σύνολο και t1,t2 δύο διαφορετικές πλειάδες, τότε: t1[sk] t2[sk] Βάσεις Δεδομένων Σχεσιακό Μοντέλο Δεδομένων 19

Υπερκλειδί ΥΠΕΡΚΛΕΙΔΙ Ένα σύνολο SK από γνωρίσματα μοναδικό για μια σχέση, ονομάζεται ΥΠΕΡΚΛΕΙΔΙ Κάθε σχέση έχει ένα προφανές υπερκλειδί: Το σύνολο όλων των γνωρισμάτων της Είναιπιθανόνααφαιρέσουμεέναγνώρισμααπόένα υπερκλειδί και το νέο σύνολο να είναι και αυτό υπερκλειδί ΚΛΕΙΔΙ: Ένα υπερκλειδί από το οποίο δεν μπορεί να αφαιρεθεί κανένα γνώρισμα και να παραμείνει υπερκλειδί ΚΛΕΙΔΙ είναι ένα ελάχιστο ΥΠΕΡΚΛΕΙΔΙ Τιμή ενός κλειδιού: Προσδιορίζει μονοσήμαντα την πλειάδα Πως καθορίζεται το κλειδί; Η ιδιότητα του κλειδιού είναι μια ιδιότητα του σχήματος σχέσης Βάσεις Δεδομένων Σχεσιακό Μοντέλο Δεδομένων 20

Πρωτεύον Κλειδί Κλειδιά: Ένα σχήμα σχέσης μπορεί να έχει περισσότερα από ένα κλειδιά Υποψήφια Κλειδιά: Κάθε κλειδί ονομάζεται ΥΠΟΨΗΦΙΟ ΚΛΕΙΔΙ (candidate key) Πρωτεύων Κλειδί: Συνήθωςορίζουμεένααπότα υποψήφια κλειδιά ως πρωτεύον (primary key) Συμβολισμός: Υπογραμμίζουμε τα γνωρίσματα που σχηματίζουν το πρωτεύον κλειδί Επιλογή Πρωτεύοντος Κλειδιού: Αν έχουμε πολλές επιλογές για το κλειδί, διαλέγουμε συνήθως μία με όσο δυνατό λίγα γνωρίσματα και προτιμούμε αριθμητικά γνωρίσματα Βάσεις Δεδομένων Σχεσιακό Μοντέλο Δεδομένων 21

Άλλοι περιορισμοί Σημασιολογική Ακεραιότητα: Πχ. ομισθόςδεν μπορεί να υπερβαίνει κάποιο πλαφόν ή καλύτερα δεν μπορεί να είναι μικρότερος από το ελάχιστο νόμιμο Άλλοι Μηχανισμοί: Θα δούμε μελετώντας τη γλώσσα SQL μηχανισμούς όπως είναι οι Triggers και τα Assertions που μπορούν να χρησιμοποιηθούν για να υλοποιηθούν περιορισμοί ΕΠΙΣΗΣ: Οι παραπάνω περιορισμοί είναι περιορισμοί κατάστασης Υπάρχουν και μεταβατικοί περιορισμοί: Πχ. Ο μισθός μπορεί μόνο να αυξάνει!! Μπορούν να υλοποιηθούν με δυναμικούς περιορισμούς, triggers,.. Βάσεις Δεδομένων Σχεσιακό Μοντέλο Δεδομένων 22

Ακεραιότητα Οντοτήτων Περιορισμός ακεραιότητας οντοτήτων: Δεν μπορεί η τιμή ενός γνωρίσματος που είναι κλειδί ή μέρος ενός κλειδιού (για σύνθετα κλειδιά) να έχει την τιμή NULL Βάσεις Δεδομένων Σχεσιακό Μοντέλο Δεδομένων 23

Αναφορική Ακεραιότητα Περιορισμός αναφορικής ακεραιότητας: Αφορά δύο σχέσεις και ορίζεται για να υπάρχει συνέπεια στις πλειάδες των δύο σχέσεων Με απλά λόγια: Μια πλειάδα μιας σχέσης που αναφέρεται σε μια άλλη σχέση, θα πρέπει να αναφέρεται σε μια πλειάδα της άλλης σχέσης που υπάρχει Παράδειγμα: Εάν ένας ΕΡΓΑΖΟΜΕΝΟΣ ανήκει στο τμήμα με κωδικό 100 θα πρέπει να υπάρχει στον πίνακα ΤΜΗΜΑ ένα τμήμα με τον κωδικό αυτό (100) Βάσεις Δεδομένων Σχεσιακό Μοντέλο Δεδομένων 24

Πηγές/Αναφορές Κεφάλαιο 5 από το Βιβλίο του Μαθήματος: Θεμελιώσεις Αρχές Συστημάτων Βάσεων Δεδομένων (Τόμος Α' - Έκδοση 4η), Elmasri & Navathe (Μετάφραση: Εκδόσεις ΔΙΑΥΛΟΣ) Βάσεις Δεδομένων Σχεσιακό Μοντέλο Δεδομένων 25