Μετατροπή Ο/Σ σε Σχεσιακό Μοντέλο Σχεδιασμός Βάσεων Δεδομένων

Σχετικά έγγραφα
Εργαστήριο Ανάπτυξης Εφαρμογών Βάσεων Δεδομένων

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ. Διδάσκουσα: Μαρία Χαλκίδη. Βάσεις Δεδομένων, Παν. Πειραιώς

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ. Διδάσκουσα: Μαρία Χαλκίδη. Βάσεις Δεδομένων, Παν. Πειραιώς

Σχεδιασμός Βάσεων Δεδομένων

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

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

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

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

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

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

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


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

Διάλεξη 04: Εννοιολογική Σχεδίαση Βάσης Δεδομένων II (Entity Relationship Modelling) Διδάσκων: Παναγιώτης Ανδρέου

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

Σχεδίαση Β.Δ. (Database Design)


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

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

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

Σχεδίαση Σχεσιακών ΒΔ

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

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

Σχεσιακή δοµή δεδοµένων

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

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

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

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

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

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

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

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

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

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

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

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

Διάλεξη 03: Εννοιολογική Σχεδίαση Βάσης Δεδομένων I (Entity Relationship Modelling) Διδάσκων: Παναγιώτης Ανδρέου

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

Εισαγωγικό Μάθημα Βασικές Έννοιες - Ανάλυση Απαιτήσεων

. Εργαστήριο Βάσεων Δεδομένων. Εισαγωγικό Μάθημα Βασικές Έννοιες - Ανάλυση Απαιτήσεων

Διάγραμμα Οντοτήτων Συσχετίσεων (ΔΟΣ) Entity Relationship Diagram (ERD)

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

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

Βάσεις Δεδομένων Ι. 2 ο Φροντιστήριο. Πέρδικα Πολίνα [perdika]

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

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

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

Πανεπιστήμιο Κρήτης Τμήμα Επιστήμης Υπολογιστών Κανονικές Μορφές (Normal Forms)

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

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

Πεδία (Attributes) Συσχετίσεις (Relationships) Κλειδιά (Identifiers) Οντότητες είναι υποψήφια αρχεία

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

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

ΜοντέλοΟντοτήτωνΣυσχετίσεων & ΔιάγραμμαΟντοτήτων Συσχετίσεων. Μοντέλο Οντοτήτων Συσχετίσεων

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

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

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

Μοντελοποίηση Πεδίου

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

Διαδικασία σχεδιασμού Β.Δ.

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

Διδάσκων: Παναγιώτης Ανδρέου

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

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

1.1. Βάσεις δεδομένων

Βάσεις Δεδομένων ΙΙ. Διάλεξη 5 η XML και ΒΔ στο Διαδίκτυο

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

ΚΑΤΑΝΕΜΗΜΕΝΕΣ ΒΑΣΕΙΣ Ε ΟΜΕΝΩΝ

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

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

Δόμηση Απαιτήσεων: Εννοιολογική Μοντελοποίηση Δεδομένων

Βάσεις Δεδομένων. Ενότητα 5: Σημασιολογικός Σχεδιασμός. Αθανάσιος Σπυριδάκος Τμήμα Διοίκησης Επιχειρήσεων

Entity-Relationship Model (Chen) Οντολογικό Σχεσιακό Μοντέλο

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

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

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

Βάσεις Δεδομένων 2η εργαστηριακή άσκηση

Τα στοιχεία των ΠΣ στο πλαίσιο της ΔΔ Μοντέλο Δεδομένων Data Model

Διάλεξη 08: Αντιστοίχηση Εννοιολογικού σε Σχεσιακό Μοντέλο (ER/EER to Relational) Διδάσκων: Παναγιώτης Ανδρέου

Βάσεις Δεδομένων Ενότητα 4

Αρχεία και Βάσεις Δεδομένων

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

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

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

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

Περιγραφή Μαθήματος. Περιγραφή Περιεχόμενο του Μαθήματος

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

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

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

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

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

Σχεσιακή Άλγεβρα Σχεδιασμός Βάσεων Δεδομένων

Εισαγωγή στην επιστήμη των υπολογιστών

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

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

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

Εργαστήριο Τεχνολογίας Λογισμικού και Ανάλυσης Συστημάτων - 4 ο Εργαστήριο -

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

Τ.Ε.Ι ΘΕΣΣΑΛΟΝΙΚΗΣ, ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΣΔΒΔ (ΕΡΓΑΣΤΗΡΙΟ 4) Τελευταία ενημέρωση: 11/2011. Μετασχηματισμός διαγράμματος ER σε σχεσιακό σχήμα ΒΔ

Department of Computer Science University of Cyprus. EPL342 Databases. Lecture 4: ER I. Data Modeling Using the ER Model

Transcript:

Μετατροπή Ο/Σ σε Σχεσιακό Μοντέλο Σχεδιασμός Βάσεων Δεδομένων Πηγή διαφανειών Γ. Βασιλακόπουλος «Συστήματα Βάσεων Δεδομένων»,

Εννοιολογικός σχεδιασμός Προσδιορισμός απαιτούμενων δεδομένων Τρόπος οργάνωσης σε ανώτερο επίπεδο αφαίρεσης Λιγότερο στον προσδιορισμό του τρόπου εκτέλεσης των δοσοληψιών επί το δεδομένων

Εννοιολογικός σχεδιασμός Προσδιορισμός αντικειμένων δεδομένων Οντότητες, Χαρακτηριστικά, Συσχετίσεις Ονομασία και ορισμός αντικείμενων Τεκμηρίωση (καταγραφή στο λεξικό δεδομένων)

Μετατροπή Σχήματος Ο-Σ σε Σχεσιακό Όσα αναφέρουμε είναι δεν θα πρέπει να ληφθούν ως αυστηροί κανόνες. Είναι ενδεικτικά παραδείγματα που βοηθούν στην μετατροπή Ο-Σ σε Σχεσιακό Σχήμα.

Μετατροπή Σχήματος Ο/Σ σε Σχεσιακό Για κάθε τύπο οντοτήτων και για κάθε τύπο συσχετίσεων δημιουργούμε ένα σχήμα σχέσης που παίρνει το όνομα του αντίστοιχου τύπου.

Συσχετίσεις Γενικά, για κάθε συσχέτιση R μεταξύ n τύπων οντοτήτων που αντιστοιχούν στις σχέσεις S 1, S 2,, S n δημιουργούμε μια νέα σχέση R με γνωρίσματα: τα γνωρίσματα (ξένα κλειδιά) του πρωτεύοντος κλειδιού κάθε συμμετέχουσας σχέσης S i τα γνωρίσματα της R (αν υπάρχουν) Θα δούμε κάποιες ειδικές περιπτώσεις

Μοντέλο οντοτήτων-συσχετίσεων. Ο συνδυασμός ενός διαγράμματος οντοτήτων-σχέσεων και του αντίστοιχου συνόλου κανονικοποιημένων πινάκων ονομάζεται μοντέλο οντοτήτωνσυσχετίσεων. Για την κατασκευή ενός μοντέλου οντοτήτων-συσχετίσεων είναι πολλές φορές προτιμότερο να αρχίσει κανείς με την κατασκευή ενός βασικού μοντέλου οντοτήτων-συσχετίσεων (basic entity-relationship model). Ένα τέτοιο μοντέλο αποτελείται από ένα διάγραμμα οντοτήτων συσχετίσεων και από ένα αντίστοιχο σύνολο πινάκων που ονομάζονται βασικοί πίνακες. Ένας βασικός πίνακας περιέχει μόνον εκείνα τα χαρακτηριστικό που συνθέτουν τον προσδιοριστή των γραμμών του. Κατά το σχεδιασμό του εννοιολογικού μοντέλου δεδομένων, ο τρόπος αναπαράστασης της σχέσης στο βασικό μοντέλο οντοτήτων-σχέσεων εξαρτάται από το είδος της συμμετοχής των δύο οντοτήτων στη σχέση.

Μοντέλα Οντοτήτων Συσχετίσεων / Βασικό Μοντέλο Ο-Σ Αναπαράσταση Συσχετίσεων 1:1 Υποχρεωτική συμμετοχή και των δύο οντοτήτων Υποχρεωτική συμμετοχή μόνο της μίας οντότητας Προαιρετική συμμετοχή και των δύο οντοτήτων

Μοντέλα Οντοτήτων Συσχετίσεων - Βασικό Μοντέλο Αναπαράσταση Συσχετίσεων 1:1 Υποχρεωτική συμμετοχή και των δύο οντοτήτων Υποχρεωτική συμμετοχή μόνο της μίας οντότητας Προαιρετική συμμετοχή και των δύο οντοτήτων

Μοντέλα O-Σ / Αναπαράσταση Σχέσεων 1:1 Αν υποτεθεί ότι κάθε εργαζόμενος στον οργανισμό κατέχει μία οργανική θέση και ότι κάθε οργανική θέση κατέχεται από έναν εργαζόμενο τότε και οι δύο οντότητες συμμετέχουν υποχρεωτικά στη σχέση όπως φαίνεται στο Σχήμα 1 (α). Σ αυτήν την περίπτωση όλα τα χαρακτηριστικά των οντοτήτων και της συσχέτισης μπορούν να τοποθετηθούν σε έναν πίνακα. Η συσχέτιση OCCUPIES αναπαριστάται εσωτερικά από την παρουσία των προσδιοριστών EMP_CODE και POS_CODE των οντοτήτων EMPLOYEE και POSITION, αντίστοιχα, όπως φαίνεται στο Σχήμα 17(β). EMPLOYEE 1 OCCUPIES 1 POSITION α) Διάγραμμα οντοτήτων - σχέσεων EMPLOYEE ( EMP_CODE,..., POS_CODE ) β) Πίνακας που αντιστοιχεί στο διάγραμμα του (α). ΣΧΗΜΑ 17. Βασικό μοντέλο οντοτήτων-σχέσεων (Υποχρεωτική συμμετοχή και των δύο οντοτήτων σε σχέση 1:1).

Μοντέλα O-Σ / Αναπαράσταση Συσχετίσεων 1:1 Υποχρεωτική Συμμετοχή μόνο της μίας οντότητας Αν υποτεθεί ότι κάθε εργαζόμενος στον οργανισμό δεν κατέχει υποχρεωτική οργανική θέση και ότι κάθε οργανική θέση κατέχεται από έναν εργαζόμενο, τότε η συμμετοχή των οντοτήτων EMPLOYEE και POSITION στη σχέση OCCUPIES είναι προαιρετική και υποχρεωτική, αντίστοιχα, όπως φαίνεται στο Σχήμα 2 (α). EMPLOYEE 1 OCCUPIES 1 POSITION α) Διάγραμμα οντοτήτων - σχέσεων. EMPLOYEE ( EMP_CODE,... ) POSITION ( POS_CODE,..., EMP CODE ) β) Πίνακας που αντιστοιχεί στο διάγραμμα του (α). ΣΧΗΜΑ 2. Βασικό μοντέλο οντοτήτων-σχέσεων (υποχρεωτική συμμετοχή της μιας οντότητας σε σχέση 1:1).

Μοντέλα O-Σ / Αναπαράσταση Συσχετίσεων 1:1 Προαιρετική Συμμετοχή και των δύο οντοτήτων Αν υποτεθεί ότι κάθε εργαζόμενος του οργανισμού δεν κατέχει υποχρεωτικά οργανική θέση και ότι κάθε οργανική θέση δεν είναι υποχρεωτικά κατειλημμένη, τότε οι δύο οντότητες συμμετέχουν προαιρετικά στη σχέση όπως φαίνεται στο Σχήμα 3(α). EMPLOYEE 1 OCCUPIES 1 POSITION α) Διάγραμμα οντοτήτων - σχέσεων. EMPLOYEE ( EMP_CODE,... ) POSITION ( POS_CODE,... ) OCCUPIES ( EMP_CODE, POS_CODE, ) β) Πίνακας που αντιστοιχεί στο διάγραμμα του (α). ΣΧΗΜΑ 3. Βασικό μοντέλο οντοτήτων - σχέσεων (προαιρετική συμμετοχή και των δύο οντοτήτων σε σχέση 1:1).

Μοντέλα Οντοτήτων Συσχετίσεων / Βασικό Μοντέλο Ο-Σ Αναπαράσταση Συσχετίσεων 1:Ν Υποχρεωτική συμμετοχή της απογονικής οντότητας Προαιρετική συμμετοχή της απογονικής οντότητας

Μοντέλα Ο-Σ / Αναπαράσταση Συσχετίσεων 1:Ν Υποχρεωτική Συμμετοχή της απογονικής οντότητας Αν υποτεθεί ότι κάθε εργαζόμενος πρέπει να ανήκει σε ένα τμήμα τότε η συμμετοχή της οντότητας EMPLOYEE στη σχέση CONTAINS είναι υποχρεωτική όπως φαίνεται στο Σχήμα 20(α). Γενικά στην περίπτωση υποχρεωτικής συμμετοχής της απογονικής οντότητας σε σχέση 1:Ν η σχέση μπορεί να αναπαρασταθεί με την τοποθέτηση του προσδιοριστή της γονικής οντότητας στον πίνακα που αντιστοιχεί στην απογονική οντότητα. DEPARTMENT 1 OCCUPIES Ν EMPLOYEE α) Διάγραμμα οντοτήτων - σχέσεων. DEPARTMENT ( DEPT_CODE,... ) EMPLOYEE ( EMP_CODE,..., DEPT_CODE ) β) Πίνακας που αντιστοιχεί στο διάγραμμα του (α). ΣΧΗΜΑ 20. Βασικό μοντέλο οντοτήτων-σχέσεων (υποχρεωτική συμμετοχή της απογονικής οντότητας στη σχέση 1:Ν).

Μοντέλα Ο-Σ / Αναπαράσταση Συσχετίσεων 1:Ν Προαιρετική Συμμετοχή της απογονικής οντότητας Αν υποτεθεί ότι υπάρχουν εργαζόμενοι στον οργανισμό που δεν ανήκουν σε κανένα τμήμα τότε η συμμετοχή της οντότητας EMPLOYEE στη σχέση CONTAINS είναι προαιρετική όπως φαίνεται στο Σχήμα 21(α). Σε αυτή την περίπτωση επιβάλλεται η αναπαράσταση των δύο οντοτήτων και της σχέσης με ξεχωριστούς πίνακες. DEPARTMENT 1 OCCUPIES Ν EMPLOYEE α) Διάγραμμα οντοτήτων - σχέσεων. DEPARTMENT ( DEPT_CODE,... ) EMPLOYEE ( EMP_CODE,...) OCCUPIES ( EMP_CODE,..., DEPT_CODE ) β) Πίνακας που αντιστοιχεί στο διάγραμμα του (α). ΣΧΗΜΑ 21. Βασικό μοντέλο οντοτήτων-συσχετίσεων (προαιρετική συμμετοχή της απογονικής οντότητας σε σχέση 1:Ν).

Μοντέλα Ο-Σ / Αναπαράσταση Συσχετίσεων Μ:Ν Έστω ότι τα βιβλία μίας βιβλιοθήκης καταχωρούνται κατά θέμα. Κάθε βιβλίο μπορεί να ανήκει σε πολλά θέματα και κάθε θέμα μπορεί να περιλαμβάνει πολλά βιβλία της βιβλιοθήκης. Στην περίπτωση συσχετίσεων Ν:Μ δημιουργούνται τρεις ξεχωριστοί πίνακες (ένας για κάθε οντότητα και ένας για τη σχέση μεταξύ τους) ανεξάρτητα από το είδος συμμετοχής των οντοτήτων στη συσχέτιση, όπως φαίνεται στο Σχήμα 22. BOOK M BD_SUBJ N SUBJECT α) Διάγραμμα οντοτήτων - σχέσεων. BOOK ( BK_CODE,... ) SUBJECT ( SUBJ_NAME,... ) BK_SUBJ ( BK_CODE, SUBJ_NAME,... ) β) Πίνακας που αντιστοιχεί στο διάγραμμα του (α). ΣΧΗΜΑ 22. Βασικό μοντέλο οντοτήτων-συσχετίσεων (συσχέτιση Ν:Μ).

Προ-τοποθετημένοι Προσδιοριστές Η οντότητα DEPARTMENT προσδιορίζεται από το χαρακτηριστικό DEPT_CODE και η οντότητα STUDENT από το σύνθετο χαρακτηριστικό {DEPT_CODE, ST_NO}. Αυτή η επιλογή των προσδιοριστών έχει ως συνέπεια να έχει τοποθετηθεί εκ των προτέρων ο προσδιοριστής του πίνακα DEPARTMENT στον πίνακα STUDENT. Έτσι, η σχέση CONTAINS μεταξύ των οντοτήτων DEPARTMENT και STUDENT έχει εκ των προτέρων αναπαρασταθεί από έναν προ-τοποθετημένο προσδιοριστή. Ως αποτέλεσμα, η οντότητα STUDENT έχει υποχρεωτική συμμετοχή στη σχέση CONTAINS. DEPARTMENT 1 * N CONTAINS STUDENT α) Διάγραμμα οντοτήτων - σχέσεων. DEPARTMENT ( DEPT_CODE,... ) STUDENT ( DEPT_CODE, ST_CODE, ) β) Πίνακας που αντιστοιχεί στο διάγραμμα του (α). ΣΧΗΜΑ 23. Βασικό μοντέλο οντοτήτων - συσχετίσεων με προ-τοποθετημένο προσδιοριστή.

Μοντέλα Οντοτήτων Συσχετίσεων Κατανομή Χαρακτηριστικών Εισαγωγή Σχέσεις 1:1 Σχέσεις 1:Ν Σχέσεις Μ:Ν

Εισαγωγή Μετά την κατασκευή του βασικού μοντέλου οντοτήτωνσχέσεων ακολουθεί η φάση της κατανομής των χαρακτηριστικών στους βασικούς πίνακες. Η κατανομή των χαρακτηριστικών στους βασικούς πίνακες γίνεται, συνήθως, κατά τρόπο ώστε να προκύπτουν πίνακες που βρίσκονται στον κανονικό τύπο Boyce/Codd.

Συσχετίσεις 1:1 Έστω ότι πρόκειται να κατανεμηθούν τα χαρακτηριστικά EMP_NAME, POS_GRADE, POS_DESCRIPTION, ASSESSMENT, στους βασικούς πίνακες που ορίστηκαν προηγουμένως για τις διάφορες σχέσεις 1:1 μεταξύ των οντοτήτων EMPLOYEE και POSITION. Στη συνέχεια θα εξετάσουμε τις παρακάτω περιπτώσεις: Υποχρεωτική συμμετοχή και των δύο οντοτήτων Υποχρεωτική συμμετοχή μόνο της μίας οντότητας Προαιρετική συμμετοχή και των δύο οντοτήτων

Συσχετίσεις 1:1 - Υποχρεωτική συμμετοχή και των δύο οντοτήτων Υπάρχει μόνο ένας βασικός πίνακας. Όλα τα χαρακτηριστικά μπορούν να κατανεμηθούν σ' αυτόν χωρίς να παραβιάζεται κανένας κανόνας. EMPLOYEE 1 * 1 * OCCUPIES POSITION Ο πλήρης πίνακας είναι: EMPLOYEE ( EMP_CODE, EMP_NAME, POS_CODE, POS_GRADE, POS_DESCRIPTION, ASSESSMENT )

Συσχετίσεις 1:1 - Υποχρεωτική συμμετοχή μόνο της μίας οντότητας Σ' αυτήν την περίπτωση υπάρχουν δύο βασικοί πίνακες. EMPLOYEE 1 * 1 OCCUPIES POSITION Το χαρακτηριστικό EMP_NAME κατανέμεται στον πίνακα EMPLOYEE. Τα χαρακτηριστικά POS_GRADE και POS_DESCRIPTION κατανέμονται στον πίνακα POSITION. Το χαρακτηριστικό ASSESSMENT κατανέμεται στον πίνακα POSITION. Έτσι, οι πλήρεις πίνακες είναι: EMPLOYEE ( EMP_CODE, EMP_NAME ) POSITION ( POS_CODE, POS_GRADE, POS_DESCRIPTION, ASSESSMENT, EMP_CODE)

Κατανομή Χαρακτηριστικών / Συσχετίσεις 1:1 Προαιρετική συμμετοχή και των δύο οντοτήτων Σ' αυτήν την περίπτωση υπάρχουν τρεις βασικοί πίνακες. EMPLOYEE 1 OCCUPIES 1 POSITION Η κατανομή των χαρακτηριστικών EMP_NAME, POS_GRADE και POS_DESCRIPTION γίνεται χωρίς πρόβλημα στους πίνακες EMPLOYEE (το πρώτο) και POSITION (το δεύτερο και το τρίτο). Το χαρακτηριστικό ASSESSMENT πρέπει να κατανεμηθεί στον πίνακα OCCUPIES. Έτσι, οι πλήρεις πίνακες είναι: EMPLOYEE ( EMP_CODE, EMP_NAME ) POSITION ( POS_CODE, POS_GRADE, POS_DESCRIPTION ) OCCUPIES ( EMP_CODE, POS_CODE, ASSESSMENT )

Κατανομή Χαρακτηριστικών - Συσχετίσεις 1:Ν Έστω ότι πρόκειται να κατανεμηθούν τα χαρακτηριστικά DEPT_ΝΑΜΕ, DEPT_POSITION, EMP_NAME, EMP_GRADE στους βασικούς πίνακες που ορίστηκαν στην προηγούμενη ενότητα για τις διάφορες σχέσεις 1:Ν μεταξύ των οντοτήτων DEPARTMENT και EMPLOYEE. Στη συνέχεια θα εξετάσουμε τις παρακάτω περιπτώσεις: Υποχρεωτική συμμετοχή της απογονικής οντότητας Προαιρετική συμμετοχή της απογονικής οντότητας

Συσχετίσεις 1:Ν - Υποχρεωτική συμμετοχή της απογονικής οντότητας Σ' αυτήν την περίπτωση υπάρχουν δύο βασικοί πίνακες. DEPARTMENT 1 N CONTAINS EMPLOYEE Η κατανομή των χαρακτηριστικών DEPT_NAME, DEPT_POSITION, EMP_NAME και EMP_GRADE γίνεται χωρίς πρόβλημα στους πίνακες DEPARTMENT (τα δύο πρώτα) και ΕΜΡLΟΥΕΕ (τα δύο τελευταία). Οι πλήρεις πίνακες είναι: DEPARTMENT ( DEPT_CODE, DEPT_NAME, DEPT_POSITION ) EMPLOYEE ( EMP_CODE, EMP_NAME, EMP_GRADE, DEPT_CODE )

Συσχετίσεις 1:Ν- Προαιρετική συμμετοχή της απογονικής οντότητας Υπάρχουν τρεις βασικοί πίνακες. DEPARTMENT 1 N CONTAINS EMPLOYEE Επειδή το χαρακτηριστικό EMP_GRADE αναφέρεται μόνο στους εργαζόμενους στον οργανισμό, πρέπει να κατανεμηθεί στον πίνακα CONTAINS. Έτσι, οι πλήρεις πίνακες είναι: DEPARTMENT EMPLOYEE CONTAINS (DEPT_CODE, DEPT_NAME, DEPT_POSITION) (EMP_CODE, EMP_NAME) (EMP_CODE, DEPT_CODE, EMP_GRADE)

Κατανομή Χαρακτηριστικών / Συσχετίσεις Μ:Ν Υπάρχουν τρεις βασικοί πίνακες. BOOK M BD_SUBJ N SUBJECT Η κατανομή των χαρακτηριστικών BK_TITLE, BK_PRICE και PUBLICATION_YEAR γίνεται στον πίνακα ΒΟΟΚ. Για τον ίδιο λόγο το χαρακτηριστικό SUBJ_DESCRIPTION κατανέμεται στον πίνακα SUBJECT. Ο πίνακας ΒΚ_SUBJ περιέχει μόνο τους προσδιοριστές των άλλων δύο πινάκων (αυτό δεν ισχύει γενικά). Έτσι, οι πλήρεις πίνακες είναι: BOOK ( BK_CODE, BK_TITLE, BK_PRICE, PUBLICATION_YEAR ) SUBJECT ( SUBJ_NAME, SUBJ_DESCRIPTION ) BK_SUBJ ( BK_CODE, SUBJ_NAME )

Μοντέλα Οντοτήτων Συσχετίσεων Επέκταση Βασικού Μοντέλου Επέκταση του βασικού μοντέλου γίνεται με την πρόσθεση επιπλέον οντοτήτων και σχέσεων όπου αυτό είναι απαραίτητο. Έστω ότι το μοντέλο οντοτήτων-συσχετίσεων των τμημάτων και εργαζομένων ενός οργανισμού πρέπει να συμπεριλάβει και τα χαρακτηριστικά QUAL_CODE, QUAL_DESCR και QUAL_DATE. Η μόνη εφικτή λύση είναι να οριστεί μία νέα οντότητα (QUALIFICATION) και μία νέα σχέση Μ:Ν μεταξύ των οντοτήτων QUALIFICATION και EMPLOYEE. DEPARTMENT ( DEPT_CODE, DEPT_NAME, DEPT_POSITION ) EMPLOYEE ( EMP_CODE, EMP_NAME, EMP_GRADE ) QUALIFICATION ( QUAL_CODE, QUAL_DESCR ) HAS ( EMP_CODE, QUAL_CODE, QUAL_DATE ) ΣΧΗΜΑ Α. Επέκταση μοντέλου οντοτήτων - σχέσεων.

Μοντέλα Οντοτήτων Σχέσεων Πλεονάζοντες Πίνακες Οντοτήτων και Συσχετίσεων Πλεονάζουσες οντότητες Πλεονάζουσες σχέσεις

Μοντέλα Οντοτήτων Συσχετίσεων / Πλεονάζοντες Πίνακες Οντοτήτων και Συσχετίσεων Πλεονάζουσες Οντότητες Για το μοντέλο του Σχήματος 1 θα πρέπει να υπάρχει ξεχωριστή οντότητα για τα τυπικά προσόντα των εργαζομένων ή θα πρέπει να συμπεριληφθούν αυτά στη σχέση HAS διαγράφοντας το χαρακτηριστικό QUAL_CODE από τον κατάλογο των χαρακτηριστικών και από τους πίνακες? Αν αποφασιστεί η απαλοιφή των οντοτήτων από το μοντέλο τότε οι οντότητες σημειώνονται με αστερίσκο στο αντίστοιχο διάγραμμα οντοτήτων - σχέσεων, όπως φαίνεται στο Σχήμα 1 (α). Εναλλακτικά, το διάγραμμα αναθεωρείται απαλείφοντας την οντότητα και μετατρέποντας τις σχέσεις σε οντότητες όπως φαίνεται στο Σχήμα 1 (β). α) EMPLOYEE M HAS N QUALIFICATION * β) EMPLOYEE 1 N EHQ HAS_QUAL ΣΧΗΜΑ 1. Πλεονάζουσα οντότητα σε μοντέλο οντοτήτων - σχέσεων.

Μοντέλα Οντοτήτων Συσχετίσεων / Πλεονάζοντες Πίνακες Οντοτήτων και Συσχετίσεων Πλεονάζουσα συσχέτιση : Συσχέτιση που δεν προσθέτει επιπλέον πληροφορία σ αυτήν που παρέχεται από μία ακολουθία μίας ή περισσότερων άλλων συσχετίσεων που αρχίζουν από την πρώτη οντότητα και καταλήγουν στη δεύτερη μέσω ενός αριθμού (πιθανώς μηδενικού) ενδιάμεσων οντοτήτων. Υπάρχουν δύο κύριοι λόγοι για τους οποίους πρέπει να απαλείφονται οι πλεονάζουσες σχέσεις από ένα μοντέλο δεδομένων: προσθέτουν αδικαιολόγητη πολυπλοκότητα στο μοντέλο. μπορεί να οδηγήσει σε λανθασμένη κατανομή των χαρακτηριστικών στους βασικούς πίνακες.

Παράδειγμα -Συσχετίσεων με πιθανά Πλεονάζουσα Σχέση 1/3 Το ερώτημα που τίθεται είναι αν η σχέση DIVEMP είναι πλεονάζουσα. Στο Σχήμα 2 (α) φαίνεται ένα διάγραμμα οντοτήτων - σχέσεων που περιέχει τις οντότητες EMPLOYEE, DEPARTMENT και DIVISION και τις σχέσεις DIVDEP, DEPEMP και DIVEMP μεταξύ τους. α) DIVISION 1 DIVDEP N 1 DEPARTMENT DEPEMP N EMPLOYEE 1 N DIVEMP ΣΧΗΜΑ 2(α). Διάγραμμα οντοτήτων-συσχετίσεων με πιθανά πλεονάζουσα συσχέτιση

Παράδειγμα -Συσχετίσεων με πιθανά Πλεονάζουσα Σχέση 2/3 Στο Σχήμα 2 (β) φαίνεται το διάγραμμα Ο-Σ της περίπτωσης στην οποία η συμμετοχή της οντότητας EMPLOYEE στη σχέση DEPEMP είναι προαιρετική ενώ η συμμετοχή της οντότητας DEPARTMENT στη σχέση DIVDEP είναι υποχρεωτική. DIVISION 1 * DIVDEP N 1 DEPARTMENT DEPEMP N EMPLOYEE ΣΧΗΜΑ 2(β). Διάγραμμα οντοτήτων-συσχετίσεων με πιθανά πλεονάζουσα συσχέτιση.

Παράδειγμα -Συσχετίσεων με πιθανά Πλεονάζουσα Σχέση 3/3 Στο Σχήμα 2(γ) φαίνεται το διάγραμμα Ο-Σ στο οποίο η συμμετοχή της οντότητας EMPLOYEE σε κάθε μία από τις σχέσεις DEPEMP και DIVEMP είναι προαιρετική. Το διάγραμμα αυτό αποτελεί και παράδειγμα διαγράμματος οντοτήτωνσχέσεων όπου είναι αναγκαία (και όχι ανεπιθύμητη) η παρουσία ζεύγους Ν:1/1:Ν (ως προς την οντότητα DIVISION). DIVISION 1 DIVDEP * N 1 DEPARTMENT DEPEMP N EMPLOYEE 1 N DIVEMP ΣΧΗΜΑ 2γ. Διάγραμμα οντοτήτων-σχέσεων με πιθανά πλεονάζουσα σχέση.

Μοντέλα Ο-Σ/ Υπο-οντότητες/ Εισαγωγή Υπο-οντότητα (sub-entity) ονομάζεται ένα υποσύνολο μιας άλλης οντότητας, που ονομάζεται υπέρ-οντότητα (super-entity), οι πραγματοποιήσεις και των δύο αναφέρονται σε ένα αντικείμενο του οργανισμού αλλά η υπο-οντότητα έχει κάποιες επιπλέον ιδιότητες. Η σχέση μεταξύ μιας υπέρ-οντότητας και μιας υπο-οντότητας της μπορεί να είναι είτε 1:1 είτε 1:Ν. Στη συνέχεια θα εξετάσουμε τις περιπτώσεις: Σχέσεις 1:1 Σχέσεις 1:Ν

Μοντέλα Οντοτήτων Συσχετίσεων / Υπο-οντότητες Σχέσεις 1:1 Στο Σχήμα 3 φαίνεται ένα πιθανό μοντέλο Ο-Σ για τρεις κατηγορίες προσωπικού. Το μοντέλο αυτό δικαιολογείται στην περίπτωση που διαφέρει η επεξεργασία δεδομένων για τις τρεις κατηγορίες των εργαζομένων. ADMIN_STAFF ( EMP_CODE, EMP_NAME, BIRTH_DATE, HOME_ADDRESS, TEL_NO, SALARY ) TECN_STAFF ( EMP_CODE, EMP_NAME, BIRTH_DATE, HOME_ADDRESS, TEL_NO, SALARY, TECN_BONUS ) SALES_STAFF ( EMP_CODE, EMP_NAME, BIRTH_DATE, HOME_ADDRESS, TEL_NO, SALARY, SALES_QUOTA, SALES_BONUS ) ΣΧΗΜΑ 3. Πιθανό μοντέλο για τρεις κατηγορίες προσωπικού. Μοντέλο οντοτήτων - σχέσεων που περιλαμβάνει υπο-οντότητες Διαγραμματική αναπαράσταση ομάδας υπο-οντοτήτων

Μοντέλο οντοτήτων-συσχετίσεων που περιλαμβάνει υπο-οντότητες (σχέσεις 1:1) 1/2 Eίναι προτιμότερο από άποψης απλότητας και ακρίβειας του μοντέλου να κατασκευαστεί μία οντότητα και δύο υπο-οντότητες αυτής. Η τροποποίηση του μοντέλου οντοτήτων-σχέσεων κατ αυτόν τον τρόπο φαίνεται στο Σχήμα 4. STAFF 1 1 STS SSS 1 1 TECN_STAFF SALES_STAFF α) Διάγραμμα οντοτήτων συσχετίσεων μεταξύ υπέρ-οντότητας και υπο-οντοτήτων. ΣΧΗΜΑ 4. Μοντέλο Ο-Σ που περιλαμβάνει υπο-οντότητες (σχέσεις 1:1).

Μοντέλο οντοτήτων-συσχετίσεων που περιλαμβάνει υποοντότητες (σχέσεις 1:1) 2/2 STAFF (EMP_CODE, EMP_NAME, BIRTH_DATE, HOME_ADDRESS, TEL_NO, SALARY ) TECN_STAFF ( EMP_CODE, TECN_BONUS ) SALES_STAFF ( EMP_CODE, SALES_QUOTA, SALES_BONUS ) β) Πίνακες που αντιστοιχούν στο διάγραμμα του (α). ΣΧΗΜΑ 5. Μοντέλο οντοτήτων-σχέσεων που περιλαμβάνει υπο-οντότητες (σχέσεις 1:1).

Διαγραμματική αναπαράσταση ομάδας υπο-οντοτήτων Συχνά είναι δυνατή η ομαδοποίηση (grouping) αμοιβαία ανεξάρτητων υποοντοτήτων. Στο παράδειγμα του Σχήματος 5 μία πραγματοποίηση της οντότητας STAFF σχετίζεται με το πολύ μία πραγματοποίηση του συνδυασμού (ομάδα) TECN_STAFF και SALES_STAFF. Αυτή η πιο περιοριστική σχέση 1:1 μπορεί να αναπαρασταθεί διαγραμματικά όπως φαίνεται στο Σχήμα 7. STAFF 1 1 (status) 1 1 TECN _STAFF SALES_STAFF ΣΧΗΜΑ 6. Διαγραμματική αναπαράσταση ομάδας υπο-οντοτήτων.

Μοντέλα Οντοτήτων Συσχετίσεων / Υπο-οντότητες Συσχετίσεις 1:Ν Η διάσπαση του πίνακα EMPLOYEE ισοδυναμεί με τη δημιουργία τριών υποοντοτήτων στο μοντέλο οντοτήτων-σχέσεων όπως φαίνεται στο Σχήμα 30. EMPLOYEE 1 1 1 * * * N EMP_JOB N EMP_MS N EMP_SKILL α) Διάγραμμα οντοτήτων -σχέσεων που περιλαμβάνει υπο-οντότητες. EMPLOYEE ( EMP_CODE, EMP_NAME, ANNUAL_SALARY ) EMP_JOB ( EMP_CODE, APPOINTMENT_DATE, JOB_TITLE ) EMP-MS ( EMP_CODE, MONTH_NO, MONTHLY_SALARY ) EMP_SKILL ( EMP_CODE, SKILL_NAME ) β) Πίνακες που αντιστοιχούν στο διάγραμμα του (α). ΣΧΗΜΑ 7. Μοντέλο οντοτήτων-σχέσεων που περιλαμβάνει υπο-οντότητες (σχέσεις 1:Ν).

Μοντέλα Οντοτήτων Συσχετίσεων - Διαδικασία Εννοιολογικού Σχεδιασμού Βάσεων Δεδομένων Η διαδικασία εννοιολογικού σχεδιασμού μίας βάσης δεδομένων περιλαμβάνει ουσιαστικά δύο κύριες φάσεις: ανάλυση απαιτήσεων (requirements analysis) ανάλυση δεδομένων (data analysis) Για τον πλήρη, πέραν του εννοιολογικού, σχεδιασμό μίας βάσης δεδομένων απαιτούνται ακόμη οι φάσεις: της τροποποίησης του μοντέλου δεδομένων της προσαρμογής (ή απεικόνισης) του μοντέλου δεδομένων στις ιδιαιτερότητες και τους περιορισμούς του διαθέσιμου ΣΔΒΔ. Η διαδικασία της κανονικοποίησης μπορεί να θεωρηθεί ως προσέγγιση "από το ειδικό προς το γενικό" (bottom-up) για τον εννοιολογικό σχεδιασμό μίας βάσης δεδομένων. Το μοντέλο οντοτήτων-συσχετίσεων υιοθετεί την προσέγγιση "από το γενικό προς το ειδικό" (top-down).

ΑΣΚΗΣΗ 1 Μία εταιρία κατασκευής λογισμικού επιθυμεί να καταγράψει τα έργα που έχει αναλάβει και την κατανομή ανθρώπινου δυναμικού σε αυτά. Κάθε έργο απασχολεί πολλούς μηχανικούς λογισμικού και κάθε μηχανικός λογισμικού μπορεί να συμμετέχει σε πολλά έργα. Κάθε έργο μπορεί να έχει πολλούς συμβούλους και κάθε σύμβουλος απασχολείται σε ένα μόνο έργο. Να κατασκευαστεί μοντέλο οντοτήτων-συσχετίσεων για την κατανομή του προσωπικού σε έργα και να μετατραπεί σε σχεσιακό μοντέλο.

PROJECT OCCUPIES CORRESPONDS_T O PROJ_ENG CORRESPONDS_T O CONSULTANT ENGINEER

ΑΣΚΗΣΗ 2 Το λογισμικό ενός πληροφοριακού συστήματος αποτελείται από μια σειρά αλληλεξαρτώμενων εφαρμογών. Κάθε εφαρμογή έχει μία ή περισσότερα προγράμματα. συνδέεται ή όχι με το πολύ μία οθόνη. Επίσης, κάθε ρόλος χρήστη έχει πρόσβαση σε ένα ή περισσότερα προγράμματα εφαρμογών. Κάθε χρήστης μπορεί να έχει έναν ή περισσότερους ρόλους, αλλά να χρησιμοποιεί έναν και μόνο έναν κάθε στιγμή. Να κατασκευαστεί μοντέλο οντοτήτων-συσχετίσεων για τους ελέγχους προσβάσεων των χρηστών και να μετατραπεί σε σχεσιακό μοντέλο.

APPLICATION HAS PROGRAM PRO_ROLE ROLE HAS CORRESPONDS_T O CORRESPONDS_T O USER_ROLE IS_USED_BY CORRESPONDS_T O USER