Βάσεις Δεδομένων Ι 2 ο Φροντιστήριο http://www.dblab.upatras.gr/gr/dbi.htm Πέρδικα Πολίνα [perdika]
Σχεδιασμός & Υλοποίηση ΒΔ Βήμα 1 συλλογή & ανάλυση απαιτήσεων (requirements collection and analysis) Βήμα 2 εννοιολογικός σχεδιασμός ΒΔ (conceptual database design) Βήμα 3 λογικός σχεδιασμός ΒΔ (logical database design) Βήμα 4 φυσικός σχεδιασμός ΒΔ (physical database design)
παράδειγμα ΒΔ για ένα σύστημα μηχανογράφησης του προσωπικού μίας κατασκευαστικής εταιρίας
Βήμα 1 συλλογή & ανάλυση απαιτήσεων κατανόηση και καταγραφή των απαιτήσεων σχετικά με τα δεδομένα προσδιορισμός λειτουργικών απαιτήσεων της εφαρμογής (πράξεις στη ΒΔ)
Βήμα 1 συλλογή & ανάλυση απαιτήσεων ένας εργαζόμενος της εταιρείας μπορεί να είναι μηχανικός ή εργάτης. για κάθε εργαζόμενο θέλουμε να διατηρούμε το όνομα, τον αριθμό ταυτότητας και τη διεύθυνση του. για κάθε έργο μας ενδιαφέρει να διατηρούμε τον κωδικό του, την τοποθεσία, την ημερομηνία έναρξης και την ημερομηνία λήξης του. για κάθε έργο υπάρχει τουλάχιστον ένας υπεύθυνος μηχανικός. για κάποιους μηχανικούς μπορεί να οριστεί ότι βρίσκονται υπό την επίβλεψη άλλων μηχανικών. κάθε εργάτης εργάζεται μόνο σε ένα έργο. με κάθε έργο σχετίζεται μία και μόνο μία αναφορά, στην οποία αποθηκεύονται πληροφορίες σχετικά με το κόστος και τους προμηθευτές.
Βήμα 2 εννοιολογικός σχεδιασμός ΒΔ περιεκτική περιγραφή των απαιτήσεων των χρηστών σχετικά με τα δεδομένα λεπτομερείς περιγραφές: των τύπων δεδομένων των συσχετίσεων των περιορισμών πράξεις του μοντέλου δεδομένων που θα χρησιμοποιηθούν για να προσδιοριστούν οι πράξεις των χρηστών
πριν το Βήμα 2 βασικές έννοιες σύνολο οντοτήτων σύνολο συσχετίσεων γνωρίσματα
Οντότητες & ΒΔ οντότητα (entity): ένα αυθύπαρκτο αντικείμενο, διακριτό από άλλα αντικείμενα χαρακτηριστικά: Όνομα Γνωρίσματα: στοιχεία που καθορίζουν τα χαρακτηριστικά της συγκεκριμένης οντότητας σύνολο οντοτήτων (entity set): ένα σύνολο οντοτήτων με κοινές ιδιότητες
Οντότητες & Γνωρίσματα γνώρισμα (attribute): μπορεί να είναι απλό ή σύνθετο μονότιμο ή πλειότιμο αποθηκευμένο ή παραγόμενο null πεδίο ορισμού
Οντότητες & Κλειδιά κλειδί (key): για μία οντότητα είναι το σύνολο των γνωρισμάτων της οντότητας τα οποία είναι μοναδικά για κάθε εγγραφή και τη χαρακτηρίζουν απόλυτα
Συσχετίσεις Οντοτήτων η συσχέτιση (relationship) ανάμεσα σε οντότητες καθορίζει ένα σύνολο από συσχετισμούς ανάμεσα σε εγγραφές των οντοτήτων αυτών ένα σύνολο συσχετίσεων (relationship set) είναι ένα σύνολο συσχετίσεων του ίδιου τύπου βαθμός μιας συσχέτισης ονομάζεται ο αριθμός των οντοτήτων που συμμετέχουν στη συσχέτιση (π.χ. δυαδική για δύο) γνωρίσματα συσχετίσεων
Συσχετίσεις & Ρόλοι κάθε τύπος οντοτήτων που συμμετέχει σε ένα τύπο συσχέτισης παίζει ένα συγκεκριμένο ρόλο (role) που δηλώνεται από το όνομα ρόλου (role name) αναδρομικοί (recursive) τύποι συσχετίσεων
Συσχετίσεις & Οντότητες ο λόγος πληθικότητας (cardinality ratio) προσδιορίζει τον αριθμό των στιγμιότυπων μιας συσχέτισης στα οποία μπορεί να συμμετέχει μια οντότητα 1 προς 1 1 προς Ν M προς Ν
One-to-One WORKS_ON Relationship ΕΡΓΑΖΕΤΑΙ ΜΗΧΑΝΙΚΟΣ ΕΡΓΟ
One-to-many(1:N) or Many-to-one (N:1) ΜΗΧΑΝΙΚΟΣ ΕΡΓΑΖΕΤΑΙ ΕΡΓΟ r 1 e 1 e 2 e 3 e 4 e 5 r 2 r 3 r 4 r 5 d 1 d 2 d 3 e 6 r 6 e 7 r 7
MANY-TO-MANY(M:N) r 9 r 1 e 1 e 2 e 3 e 4 e 5 r 2 r 3 r 4 r 5 d 1 d 2 d 3 e 6 r 6 e 7 r 7 r 8
Εξάρτηση Ύπαρξης εάν η ύπαρξη της οντότητας x εξαρτάται (μέσω συσχέτισης) από την ύπαρξη της οντότητας y, τότε η x είναι εξαρτημένη από την y. μια εξάρτηση μπορεί να είναι: ολική μερική
Ισχυρές - Ασθενείς Οντότητες ισχυρές: διαθέτουν γνώρισμα κλειδί ασθενείς: οντότητες που δεν έχουν κατηγορήματα κλειδιά δικά τους και προσδιορίζονται από μια άλλη οντότητα μερικό (partial) κλειδί προσδιορίζουσα (identifying) οντότητα και σχέση
Συσχέτιση ISA ειδικού τύπου συσχέτιση 1 προς 1 που χρησιμοποιείται για να επεξηγήσει καλύτερα μια συσχέτιση π.χ. ΓΡΑΜΜΑΤΕΑΣ ISA ΕΡΓΑΖΟΜΕΝΟΣ γενίκευση / ειδίκευση κληρονομικότητα των γνωρισμάτων
Συσχέτιση d χρησιμοποιείται για να περιγράφει πιο αναλυτικά μία οντότητα από/με κάποιες άλλες π.χ. τύποι υπαλλήλων μια συσχέτιση d αντιστοιχεί σε πολλές συσχετίσεις ISA
Βήμα 2 εννοιολογικός σχεδιασμός ΒΔ Σχεδιασμός ER Διαγράμματος στο επόμενο μάθημα
εν καιρώ Βήμα 3 - λογικός σχεδιασμός ΒΔ υλοποίηση της ΒΔ με κάποιο ΣΔΒΔ Βήμα 4 - φυσικόςσχεδιασμόςβδ προσδιορισμός εσωτερικών δομών αποθήκευσης δεδομένων στη ΒΔ οργάνωση αρχείων για τη ΒΔ