Βάσεις Δεδομένων Ι 2 Διάγραμμα Οντοτήτων Συσχετίσεων (ΔΟΣ) Entity Relationship Diagram (ERD) Τμήμα Διοίκησης Επιχειρήσεων (Μεσολόγγι) ΤΕΙ Δυτικής Ελλάδας ΝΙΚΟΣ ΚΑΡΟΥΣΟΣ - ΔΙΟΝΥΣΗΣ ΚΑΡΟΥΣΟΣ XE 2015-2016
Γιατί ΔΟΣ; Υπήρξε η ανάγκη ενός κοινού τρόπου εννοιολογικής σχεδίασης Βάσεων Δεδομένων: Να μπορούμε να καταγράφουμε όλες τις οντότητες και τις συσχετίσεις που τις διέπουν Να μπορούμε να σχεδιάζουμε αυτές τις καταγραφές με μορφή διαγράμματος σχημάτων έτσι ώστε να είναι αναγνώσιμα από όλον τον κόσμο (όλους τους σχεδιαστές ΒΔ). Στο διάγραμμα όλα τα σχήματα να έχουν μία παγκοσμίως αναγνωρισμένη και συγκεκριμένη ερμηνεία. 2
Βασικά σχήματα ΔΟΣ Το διάγραμμα οντοτήτων-συσχετίσεων είναι ένας τρόπος αφηρημένης και εννοιολογικής αναπαράστασης των δεδομένων Τα βασικά σχήματα που χρησιμοποιούνται είναι: ΟΝΤΟΤΗΤΑ ΓΝΩΡΙΣΜΑ ΣΥΣΧΕΤΙΣΗ 3
Αναπαράσταση γνωρισμάτων Ανάλογα με τον τύπο του γνωρίσματος: Σύνθετο ή απλό Μονότιμο ή πλειότιμο Αποθηκευμένο ή παραγόμενο Κλειδί Σύνθετο κλειδί 4
Σύνθετο ή απλό γνώρισμα Σύνθετα είναι τα γνωρίσματα που αναλύονται σε τμήματα Για παράδειγμα η διεύθυνση ενός εργαζομένου αναλύεται στο οδός, αριθμός και ΤΚ Αριθμός Οδός ΤΚ Επώνυμο Διεύθυνση ΕΡΓΑΖΟΜΕΝΟΣ 5
Μονότιμο ή πλειότιμο Πλειότιμο είναι ένα γνώρισμα για το οποίο ένα στιγμιότυπο μπορεί να πάρει περισσότερες από μία τιμές Για παράδειγμα, ένα στιγμιότυπο της οντότητας εργαζόμενος έχει μια ημερομηνία γέννησης αλλά μπορεί να έχει περισσότερους από έναν αριθμούς τηλεφώνων Ημ.Γέννησης Τηλέφωνο ΕΡΓΑΖΟΜΕΝΟΣ 6
Αποθηκευμένο ή παραγόμενο Το Παραγόμενο είναι ένα γνώρισμα που η τιμή του μπορεί να υπολογιστεί από ήδη αποθηκευμένα γνωρίσματα Για παράδειγμα, η ηλικία ενός εργαζόμενου μπορεί να υπολογιστεί από την ημερομηνία γέννησης Ημ. Γέννησης Ηλικία ΕΡΓΑΖΟΜΕΝΟΣ 7
Γνώρισμα - κλειδί Κλειδί είναι ένα γνώρισμα που χαρακτηρίζει μονοσήμαντα κάθε στιγμιότυπο μιας οντότητας Για παράδειγμα, το ΑΦΜ ταυτοποιεί κάθε εργαζόμενο ΑΦΜ Ημ.Γέννησης ΕΡΓΑΖΟΜΕΝΟΣ Επώνυμο Όνομα 8
Σύνθετο κλειδί Τα κλειδιά που σχηματίζονται από περισσότερα από ένα γνωρίσματα ονομάζονται σύνθετα κλειδιά Σύνθετα κλειδιά είναι επίσης και τα σύνθετα γνωρίσματα που ορίζονται ως κλειδιά 9
Παράδειγμα με όλους τους τύπους γνωρισμάτων Όνομα Επώνυμο Πατρώνυμο Ημ.Γέννησης ΑΦΜ Εργαζόμενος Ηλικία Διεύθυνση Τηλέφωνο Οδός Πόλη ΤΚ Κλειδί, άρα υπογράμμιση Υπολογιζόμενο γνώρισμα Σύνθετο Γνώρισμα Γνώρισμα πολλαπλών τιμών
Συσχετίσεις Μία συσχέτιση μεταξύ δύο ή περισσοτέρων οντοτήτων υποδηλώνει την ύπαρξη χρήσιμης πληροφορίας μεταξύ των στιγμιότυπων των οντοτήτων που θέλουμε να καταγράφεται και να αναζητείται. Για παράδειγμα η συσχέτιση Φοιτητής- Δηλώνει - Μάθημα μας λέει πως εκτός των στοιχείων των φοιτητών και των μαθημάτων θέλουμε να καταχωρούμε και ποιος φοιτητής δηλώνει ποιο μάθημα Η σχέση συμβολίζεται με ένα ρόμβο Ν N ΦΟΙΤΗΤΗΣ ΔΗΛΩΝΕΙ ΜΑΘΗΜΑ 11
Συσχετίσεις - Πληθικότητες Ο λόγος πληθικότητας σε μια συσχέτιση καθορίζει τον αριθμό των στιγμιότυπων που συμμετέχουν στη συσχέτιση από κάθε οντότητα Ν 1 ΕΡΓΑΖΟΜΕΝΟΣ ΕΡΓΑΖΕΤΑΙ ΤΜΗΜΑ Μ Ν ΕΡΓΑΖΟΜΕΝΟΣ ΜΕΤΕΧΕΙ ΕΡΓΟ 1 1 ΕΡΓΑΖΟΜΕΝΟΣ ΔΙΕΥΘΥΝΕΙ ΤΜΗΜΑ 12
Συσχετίσεις Πληθικότητες: Πως τις βρίσκουμε;?? Επιχείρηση Απασχολεί Εργαζόμενος ΜΙΑ επιχείρηση ΠΟΣΟΥΣ απασχολεί; Πολλούς, άρα Ν (αφού είναι >1) ΕΝΑΣ εργαζόμενος ΣΕ ΠΟΣΕΣ επιχειρήσεις απασχολείται; Σε μία, άρα 1
Συσχετίσεις Πληθικότητες: Παράδειγμα Ν 1 Φοιτητής Σπουδάζει Τμήμα Ν Ν Συγγραφέας Γράφει Βιβλίο
Συσχετίσεις Πληθικότητες: 1-1 Επιχείρηση 1 1 απασχολεί ( 0, 1 ) ( 0, 1 ) Εργαζόμενος Επιχείρηση Εργαζόμενος E1 E2 E3 E4 EΡ1 EΡ2 EΡ3 EΡ4
Συσχετίσεις Πληθικότητες: 1 - Ν Επιχείρηση 1 Ν απασχολεί ( 0, N ) ( 0, 1 ) Εργαζόμενος Επιχείρηση Εργαζόμενος E1 E2 E3 E4 EΡ1 EΡ2 EΡ3 EΡ4
Συσχετίσεις Πληθικότητες: Ν - 1 Επιχείρηση N 1 απασχολεί ( 0, 1 ) ( 0, N ) Εργαζόμενος Επιχείρηση Εργαζόμενος E1 E2 E3 E4 EΡ1 EΡ2 EΡ3 ΕΡ4
Συσχετίσεις Πληθικότητες: Ν - Ν Επιχείρηση N N ( 0, N ) απασχολεί ( 0, N ) Εργαζόμενος Επιχείρηση Εργαζόμενος E1 E2 E3 E4 EΡ1 EΡ2 EΡ3 EΡ4
Συσχετίσεις - Ολική συμμετοχή Η ολική συμμετοχή σημειώνεται στο ER όταν η σχέση είναι υποχρεωτική, δηλαδή μια οντότητα υπάρχει μόνο αν συμμετέχει σε ένα στιγμιότυπο συσχέτισης Ν 1 ΕΡΓΑΖΟΜΕΝΟΣ ΕΡΓΑΖΕΤΑΙ ΤΜΗΜΑ ΔΙΕΥΘΥΝΕΙ Μερική συμμετοχή Ολική συμμετοχή 19
Συσχετίσεις Πληθικότητες: 1 Ν Ολική Επιχείρηση 1 N απασχολεί ( 0, N ) ( 1, 1 ) Εργαζόμενος Επιχείρηση Εργαζόμενος E1 E2 E3 E4 EΡ1 EΡ2 EΡ3 EΡ4
Συσχετίσεις Πληθικότητες: Ν Ν Ολική Επιχείρηση Ν N ( 1, N ) απασχολεί ( 1, Ν ) Εργαζόμενος Επιχείρηση Εργαζόμενος E1 E2 E3 E4 EΡ1 EΡ2 EΡ3 EΡ4
Συσχετίσεις - Γνωρίσματα Μια συσχέτιση μπορεί να έχει γνωρίσματα όπως οι οντότητες. Τα γνωρίσματα είναι χαρακτηριστικά της σχέσης που δημιουργείται μεταξύ δύο στιγμιότυπων Στο παρακάτω παράδειγμα σημειώνεται ο τύπος εργασίας (με φυσική παρουσία ή όχι) που έχει ο εργαζόμενος με το τμήμα Μ Ν ΕΡΓΑΖΟΜΕΝΟΣ ΜΕΤΕΧΕΙ ΕΡΓΟ Τύπος εργασίας 22
Αναδρομικές συσχετίσεις Αναδρομικές είναι οι συσχετίσεις οι οποίες συνδέουν στιγμιότυπα της ίδιας οντότητας ΠΡΟΪΣΤΑΤΑΙ Ν 1 ΕΡΓΑΖΟΜΕΝΟΣ 23
Ασθενείς οντότητες Ασθενείς ονομάζονται οι οντότητες των οποίων τα στιγμιότυπα ταυτοποιούνται μόνο μέσω μιας προσδιορίζουσας σχέσης με μια ισχυρή οντότητα ΑΦΜ Ημ.Γέννησης ΕΡΓΑΖΟΜΕΝΟΣ Όνομα ΠΡΟΣΤΑΤΕΥΕΙ Όνομα ΑΝΗΛΙΚΟ ΠΑΙΔΙ Ημ.Γέννησης 24
Παράδειγμα 1 Υλοποίηση μιας ΒΔ για τον κατάλογο μιας Βιβλιοθήκης. Η βιβλιοθήκη διατηρεί πληροφορίες για τα βιβλία που έχει στην κατοχή της καθώς επίσης και για συγγραφείς. Κάθε βιβλίο πρέπει να έχει γραφτεί από κάποιον συγγραφέα του οποίου τα στοιχεία διατηρεί η βιβλιοθήκη. Η βιβλιοθήκη διατηρεί σύστημα ιεραρχικής κατηγοριοποίησης των βιβλίων της. Κάθε κατηγορία μπορεί να είναι υποκατηγορία μιας άλλης κτλ. Κάθε βιβλίο πρέπει να ανήκει σε κάποια κατηγορία. Κάθε βιβλίο έχει μοναδικό ISBN, η βιβλιοθήκη διατηρεί όμως αντίτυπα από κάθε βιβλίο, τα οποία δανείζει σε χρήστες. Οι χρήστες ανοίγουν λογαριασμό στη βιβλιοθήκη και λαμβάνουν έναν μοναδικό κωδικό. Οι χρήστες μπορούν να δανειστούν βιβλία. 25
Λύση Παραδείγματος 1 ΔΟΣ (ER) 26
Παράδειγμα 1 Μία διαφημιστική εταιρία αποφασίζει να μηχανογραφηθεί. Η εταιρία έχει τμήματα με προσωπικό τα οποία αναλαμβάνουν να εκτελέσουν διαφημίσεις. Κάθε τμήμα χαρακτηρίζεται από ένα κωδικό με τρεις χαρακτήρες, ένα τίτλο, το αντικείμενο στο οποίο δραστηριοποιείται (π.χ. ραδιόφωνο, τηλεόραση) και το πλήθος των διαφημίσεων που ήδη έχει δημιουργήσει. Το προσωπικό της εταιρίας περιλαμβάνει άτομα με στοιχεία όπως: ονοματεπώνυμο, ΑΦΜ, ειδικότητα, έτος γέννησης, ηλικία και σχόλια. Τέλος, κάθε διαφήμιση χαρακτηρίζεται από έναν τίτλο, συνολικό προϋπολογισμό, και αν είναι τηλεοπτική ή όχι. Κάθε άτομο εργάζεται μόνο σε ένα τμήμα. Τα τμήματα μπορούν να δημιουργούν παράλληλα μέχρι το πολύ 3 διαφημίσεις ενώ μία διαφήμιση μπορεί να ανατεθεί σε πολλά τμήματα. Η δημιουργία της διαφήμισης από τα τμήματα γίνεται μέσα σε χρονικό διάστημα που ορίζεται σε δύο ημερομηνίες. «Αναφέρατε παραδοχές που έχετε κάνει λόγω αδυναμίας απεικόνισης στο διάγραμμα» 27
Κωδικός Λύση Παραδείγματος 2 ΔΟΣ (ER) ΠλήθοςΔ Έτος Γέννησης Ειδικότητα Ηλικία Τίτλος TMHMA 1 Εργάζετ αι Ν ΠΡΟΣΩΠΙΚΟ Αντικείμενο Ν ΑΦΜ Ονοματεπώ νυμο Από Όνομα Επώνυμο Μέχρι Σχόλια Ν Κωδ_Δ ΔΙΑΦΗΜΙΣΗ Τίτλος Τηλεοπτική Προϋπολογισμός
Τέλος παρουσίασης Νίκος Καρούσος karousos@gmail.com Διονύσης Καρούσος dkarousos@gmail.com