Κατέβασμα παρουσίασης
Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε
1
Δημιουργία Σχεσιακού μοντέλου από ERD
Βάσεις Δεδομένων I Δημιουργία Σχεσιακού μοντέλου από ERD ΥΠΕΥΘΥΝΟΣ: Θ. ΜΑΝΑΒΗΣ T Manavis
2
Βήμα 1 Κάθε κανονικός τύπος οντότητας (regular entity type) αντιστοιχίζεται σε μιά σχέση (relation) (πίνακα), που περιλαμβάνει όλα τα απλά γνωρίσματα (attributes) της οντότητας Για ένα σύνθετο (composite) γνώρισμα, επιλέγουμε μόνο τα απλά γνωρίσματα από τα οποία αποτελείται (π.χ για το «Όνοματεπώνυμο» θα βάλουμε τα «Όνομα» και «Επίθετο». Ενα υποψήφιο κλειδί του τύπου οντότητας επιλέγεται ως το πρωτεύον κλειδί (primary key) (Αν το κλειδί είναι σύνθετο, τότε θα κάνουμε κλειδί το συνδυασμό των επιμέρους γνωρισμάτων από τα οποία αποτελείται)
3
Βήμα 2 Κάθε ασθενής τύπος οντότητας (weak entity type) αντιστοιχίζεται σε μιά σχέση (relation) (πίνακα) και θα περιλάβει όλα τα απλά γνωρίσματα της οντότητας (ή όταν πρόκειται γιά σύνθετα γνωρίσματα, όλα τα απλά γνωρίσματα από τα οποία αποτελούνται) Πρωτεύον κλειδί (primary key) γίνεται το επιμέρους κλειδί αυτής της οντότητας σε συνδυασμό με το πρωτεύον κλειδί της οντότητας από την οποία εξαρτάται.
4
Βήμα 3 Για κάθε δυαδική 1:1 συσχέτιση (binary 1:1 relationship), βρίσκουμε τις δύο σχέσεις (πίνακες) που συμμετέχουν στη συσχέτιση και περιλαμβάνουμε το πρωτεύον κλειδί (primary key) του ενός πίνακα ως ξένο κλειδί (foreign key) στον άλλο. Προτιμούμε να βάλουμε το foreign key στον πίνακα που έχει ολική συμμετοχή (διπλή γραμμή) στη συσχέτιση (στο παράδειγμα, θα βάλουμε το πρωτεύον κλειδί του «ΕΡΓΑΖΟΜΕΝΟΣ» στο «ΤΜΗΜΑ» ως ξένο κλειδί) Αν η 1:1 συσχέτιση έχει γνωρίσματα, τότε αυτά μπαίνουν ως γνωρίσματα στον πίνακα όπου βάλαμε το ξένο κλειδί. 1 διοικεί 1 ΕΡΓΑΖΟΜΕΝΟΣ ΤΜΗΜΑ Εδώ θα μπεί (ως ξένο κλειδί) το πρωτεύον κλειδί της σχέσης «ΕΡΓΑΖΟΜΕΝΟΣ»
5
Βήμα 4 Για κάθε δυαδική 1:Ν συσχέτιση (binary 1:Ν relationship) μεταξύ δύο σχέσεων (πινάκων) Χ και Υ, βρίσκουμε τον πίνακα που βρίσκεται στην πλευρά «προς πολλά» της σχέσης (στο διάγραμμα), έστω Υ, και βάζουμε το πρωτεύον κλειδί του Χ ως ξένο κλειδί (foreign key) στον Υ. Π.χ. Αν η 1:Ν συσχέτιση έχει γνωρίσματα, τότε αυτά μπαίνουν ως γνωρίσματα στον πίνακα Υ. Ν Εργάζεται_σε 1 ΕΡΓΑΖΟΜΕΝΟΣ ΤΜΗΜΑ Υ Χ Εδώ θα μπεί το πρωτεύον κλειδί της σχέσης «ΤΜΗΜΑ»
6
Βήμα 5 Για κάθε δυαδική Μ:Ν συσχέτιση (binary Μ:Ν relationship) δημιουργούμε μια νέα σχέση (πίνακα) που αναπαριστά τη συσχέτιση. Το primary key της νέας σχέσης (πίνακα) είναι ο συνδυασμός των κλειδιών των δύο πινάκων που μετέχουν στη συσχέτιση. Ολα τα γνωρίσματα της Μ:Ν συσχέτισης μπαίνουν στον νέο πίνακα.
7
Βήμα 6 Για κάθε πλειότιμο (multi-valued) γνώρισμα, δημιουργούμε μια νέα σχέση (πίνακα) R που περιλαμβάνει το κλειδί της αρχικής σχέσης. Το πρωτεύον κλειδί (primary key) του R θα είναι ο συνδυασμός του κλειδιού της αρχικής σχέσης μαζί με το γνώρισμα. Αν το πλειότιμο γνώρισμα είναι σύνθετο, τότε περιλαμβάνουμε τα απλά του γνωρίσματα.
8
Βήμα 7 Για κάθε μεγαλύτερη από δυαδική συσχέτιση (έστω Ν-ary, N>2) δημιουργούμε μιά νέα σχέση (πίνακα) S. Βάζουμε στην S ως ξένα κλειδιά τα πρωτεύοντα κλειδιά των σχέσεων που παίρνουν μέρος στην πολλαπλή (N-ary) συσχέτιση. Επίσης στην S βάζουμε όλα τα απλά γνωρίσματα της πολλαπλής συσχέτισης. Το πρωτεύον κλειδί του S είναι συνήθως ο συνδυασμός όλων των ξένων κλειδιών που αντιπροσωπεύουν τις οντότητες στη συσχέτιση.
9
Παράδειγμα
10
Σχεσιακό μοντέλο του προηγούμενου ER μοντέλου:
Τα ξένα κλειδιά αναπαρίστανται με πλάγιους χαρακτήρες (π.χ. superNINO) ή με αστερίσκο
11
Αναλυτικά τα βήματα που ακολουθήθηκαν:
EMPLOYEE (NINO, initials, fName, surname, DOB, address, gender) DEPARTMENT(dNumber, name) PROJECT(pNumber, name, location) 1 Δηλαδή το πρωτεύον κλειδί = {NINO,dependentName} και δίνει τον πίνακα: DEPENDENT(NINO, dependantName, relationship) 2 3
12
Αναλυτικά τα βήματα: Για τη συσχέτιση WORKS-FOR, το πρωτεύον κλειδί του DEPARTMENT συμπεριλαμβάνεται ως το ξένο κλειδί του EMPLOYEE Για τον SUPERVISION, το πρωτεύον κλειδί του EMPLOYEE περιλαμβάνεται ως ξένο κλειδί στην ίδια τη σχέση EMPLOYEE relation, μετονομασμένο ως superNINO: EMPLOYEE (NINO, initials, fName, surname, DOB, address, gender, dNumber, superNINO) Η συσχέτιση CONTROLS αντιστοιχίζεται με παρόμοιο τρόπο: PROJECT(pNumber, name, location, controlDNumber) 4 5 WORKS_ON(NINO, pNumber, hours) DEPT_LOCATION(dNumber, location) Μια ξεχωριστή πλειάδα (tuple) («γραμμή») θα υπάρχει στο DEPT_LOCATION για κάθε τοποθεσία που έχει ένα department. Επομένως αν το Department 10 έχει 3 τοποθεσίες, τότε θα υπάρχουν 3 πλειάδες στη σχέση DEPT_LOCATION για το department 10. 6
Παρόμοιες παρουσιάσεις
© 2024 SlidePlayer.gr Inc.
All rights reserved.