Βάσεις δεδομένων. Π. Φιτσιλής

Σχετικά έγγραφα
ΔΙΑΓΡΑΜΜΑ ΟΝΤΟΤΗΤΩΝ - ΣΥΣΧΕΤΙΣΕΩΝ

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

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

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

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

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

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

ΕΝΝΟΙΟΛΟΓΙΚΗ ΣΧΕΔΙΑΣΗ ΔΕΔΟΜΕΝΩΝ (6)

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

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

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

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

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

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

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

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

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

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

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

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

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

Εισαγωγή στα Πληροφοριακά Συστήματα

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

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

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΣΙΑ ΠΑΝΕΠΙΣΗΜΙΟ ΚΡΗΣΗ

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

Τεχνολογία Λογισμικού

Από το Μοντέλο Οντοτήτων Συσχετίσεων στο Σχεσιακό Μοντέλο

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ - Από το ΔΟΣ στη Σχεσιακή Β.Δ.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

ΠΕΛΑΤΗΣ ΠΑΡΑΓΓΕΛΙΑ ΠΡΟΪΟΝ

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

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


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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Τεχνολογία Λογισμικού & Ανάλυση Συστημάτων

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

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

Σχεδίαση και Χρήση Βάσεων Δεδομένων. Χρήση του DBDesigner. Γιώργος Πυρουνάκης - forky@di.uoa.gr

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

Σχεδίαση Βάσεων Δεδομένων

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

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

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

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

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

Διαδικασία Ανάπτυξης ΣΔΒΔ

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

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

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

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

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

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

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

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

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

Περιεχόμενο του μαθήματος

Μετασχηµατισµός διαγράµµατος ER σε σχεσιακό σχήµα Β

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

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

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

Σχεδίαση Βάσεων Δεδομένων

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

ΑΝΑΛΥΣΗ ΑΠΑΙΤΗΣΕΩΝ ανάλυση απαιτήσεων Σε αυτό το μάθημα θα ασχοληθούμε με : Δημιουργία μοντέλων


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

Σχεδίαση Βάσεων Δεδομένων

Transcript:

Βάσεις δεδομένων Π. Φιτσιλής pfitsilis@gmail.com

Στόχοι Στόχος του κεφαλαίου αυτού είναι να περιγράψει τις βασικές έννοιες που χρησιμοποιούνται για το σχεδιασμό μίας βάσης δεδομένων. 2

3 Μοντέλα Δεδομένων Ένα μοντέλο δεδομένων παρέχει ένα σύνολο εννοιών που είναι απαραίτητες για την περιγραφή της βάσης δεδομένων. Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

5 Τύποι Μοντέλων Δεδομένων Εννοιολογικά/Λογικά ή υψηλού επιπέδου Εύκολα κατανοητά από τον άνθρωπο Οι έννοιες τους αναπαριστώνται με σύμβολα Εσωτερικό Κατανοητά από τον άνθρωπο και τον Η/Υ Φυσικά ή χαμηλού επιπέδου Κατανοητά από ειδικούς της πληροφορικής Κατάλληλα για τεχνικές λεπτομέρειες Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

Το εννοιολογικό/λογικό μοντέλο (conceptual) Αναπαριστά την συνολική εικόνα της βάσης δεδομένων Όλες οι διαφορετικές οπτικές γωνίες ενσωματώνονται σε ένα ενιαίο εννοιολογικό σχήμα Για την απεικόνισή του χρησιμοποιείται το ER μοντέλο και το διάγραμμα ERD που αντιπροσωπεύει γραφικά το εννοιολογικό μοντέλο Είναι ανεξάρτητο από software και hardware

Το εσωτερικό μοντέλο

Το φυσικό μοντέλο Λειτουργεί στο χαμηλότερο επίπεδο αφαίρεσης Περιγράφει τον τρόπο αποθήκευσης των δεδομένων σε μέσα αποθήκευσης, όπως δίσκους ή αλλού Απαιτεί τον ορισμό των μεθόδων φυσικής αποθήκευσης και πρόσβασης δεδομένων

Μοντέλα δεδομένων Μοντέλα δεδομένων Σχετικά απλές αναπαραστάσεις σύνθετων δομών δεδομένων πραγματικού κόσμου Συχνά γραφικά Μοντέλο: αφαίρεση ενός πραγματικού αντικειμένου ή γεγονότος Χρήσιμο στην κατανόηση των περιπλοκών αντικειμένων/ σχέσεων του πραγματικού περιβάλλοντος Η μοντελοποίηση δεδομένων είναι επαναληπτική και προοδευτική

Διαφορετικές οπτικές γωνίες και αφαίρεση

Η σημασία των μοντέλων δεδομένων Διευκολύνουν την αλληλεπίδραση μεταξύ του σχεδιαστή, του προγραμματιστή εφαρμογών και του τελικού χρήστη Οι τελικοί χρήστες έχουν διαφορετικές απόψεις και ανάγκες για δεδομένα Το μοντέλο δεδομένων οργανώνει δεδομένα για διάφορους χρήστες Το μοντέλο δεδομένων είναι μια αφαίρεση

Βασικά δομικά στοιχεία μοντέλων δεδομένων Οντότητα (entity): οτιδήποτε σχετικά με τα δεδομένα που συλλέγονται και αποθηκεύονται Χαρακτηριστικό (Attribute): χαρακτηριστικό μιας οντότητας Συνώνυμο με το Γνώρισμα, Πεδίο Σχέση (relationship) : περιγράφει μια συσχέτιση μεταξύ των οντοτήτων Μία προς πολλές (1: Μ) σχέση (one-to-many) Πολλές προς πολλές (M: N ή M: M) σχέση (many-to-many) Σχέση μια προς μια (1: 1) (one-to-one) Περιορισμός (constraint) : ένας περιορισμός που έχει επιβληθεί στα δεδομένα

Επιχειρηματικοί κανόνες (Business Rules) Περιγραφές πολιτικών, διαδικασιών ή αρχών εντός μιας συγκεκριμένης οργάνωσης Εφαρμόζονται σε κάθε οργανισμό που αποθηκεύει και χρησιμοποιεί δεδομένα για τη δημιουργία πληροφοριών Περιγραφή τις λειτουργίες που επιβάλλουν ενέργειες στο περιβάλλον ενός οργανισμού Πρέπει να είναι γραπτοί και ενημερωμένοι Πρέπει να είναι εύκολο να κατανοηθούν και να είναι γνωστοί σε όλους Περιγράφουν τα χαρακτηριστικά των δεδομένων, όπως αυτά φαίνονται από τον οργανισμό

Ανακάλυψη επιχειρηματικών κανόνων Πηγές επιχειρηματικών κανόνων (που τους βρίσκουμε) Διευθυντές εταιρειών Φορείς χάραξης πολιτικής Διευθυντές τμημάτων Γραπτή τεκμηρίωση Διαδικασίες Πρότυπα Εγχειρίδια λειτουργίας Από συνεντεύξεις με τους τελικούς χρήστες

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

Μετατροπή επιχειρηματικών κανόνων σε στοιχεία μοντέλου δεδομένων Ta ουσιαστικά μεταφράζονται σε οντότητες Τα ρήματα μεταφράζονται σε σχέσεις μεταξύ οντοτήτων Οι σχέσεις είναι αμφίδρομες Δύο ερωτήσεις για τον προσδιορισμό του τύπου σχέσης: Πόσα Β σχετίζονται ένα Α; Πόσες Α σχετίζονται με ένα Β;

Διάγραμμα Οντοτήτων-Συσχετίσεων (ΔΟΣ) 18 Προτάθηκε από τον Peter Chen το 1976 Οι βασικές του έννοιες είναι: Οντότητα Χαρακτηριστικό Συσχέτιση Peter Chen Υιοθετεί σύμβολα για την αναπαράσταση αυτών των εννοιών

Οντότητα Φυσικό ή νοητό αντικείμενο του πραγματικού κόσμου και για το οποίο θέλουμε να αποθηκεύσουμε δεδομένα στη βάση δεδομένων Κάθε οντότητα συμβολίζεται με ένα παραλληλόγραμμο Μέσα στο παραλληλόγραμμο γράφουμε το όνομα της οντότητας (συνήθως στον ενικό) ΟΝΤΟΤΗΤΑ

Παράδειγμα οντοτήτων 20 Μία βάση δεδομένων αναπτύσσεται για ένα εκπαιδευτικό ίδρυμα Θέλουμε να περιγράψουμε αυτή τη βάση δεδομένων με ένα ΔΟΣ Μας δίνεται ότι στη βάση δεδομένων θα αποθηκεύονται δεδομένα που αφορούν τους ΚΑΘΗΓΗΤΕΣ και τα ΤΜΗΜΑΤΑ του εκπαιδευτικού ιδρύματος. Τότε, το ΔΟΣ που περιγράφει τη βάση δεδομένων, θα πρέπει να περιέχει τις οντότητες ΚΑΘΗΓΗΤΗΣ και ΤΜΗΜΑ: ΚΑΘΗΓΗΤΗΣ ΤΜΗΜΑ

Η οντότητα ΚΑΘΗΓΗΤΗΣ και οι αντιπρόσωποί της Η οντότητα ΚΑΘΗΓΗΤΗΣ αναπαριστάνει όλα τα φυσικά πρόσωπα του πραγματικού κόσμου που είναι καθηγητές στο εκπαιδευτικό ίδρυμα. Ισοδύναμα λέμε: Κάθε ένας καθηγητής του ιδρύματος είναι ένας αντιπρόσωπος της οντότητας ΚΑΘΗΓΗΤΗΣ. ΚΑΘΗΓΗΤΗΣ

Οι αντιπρόσωποι ως μέλη ενός συνόλου Οι αντιπρόσωποι μίας οντότητας αναπαριστάνονται ως μέλη ενός συνόλου. Μας δίνεται ότι στο ίδρυμα υπάρχουν 5 καθηγητές, οι Κ1, Κ2, Κ3, κ4 και Κ5: ΚΑΘΗΓΗΤΕΣ Κ1 Κ2 ΚΑΘΗΓΗΤΗΣ Κ3 Κ4 Κ5

Στιγμιότυπα και η τιμή NULL Μια οντότητα ενός ΔΟΣ αναφέρεται σημασιολογικά σε ένα σύνολο (ή κλάση) από ομοειδή στοιχεία τα οποία θα αποκαλούμε στιγμιότυπα. Για παράδειγμα, ένα στιγμιότυπο της οντότητας όχημα είναι το στοιχείο <ΑΧΝ-5673, FIAT, GT-2001, 1400,...>. Μια ειδική τιμή ενός γνωρίσματος είναι η τιμή NULL, η οποία αποδίδεται όταν ένα στιγμιότυπο για το συγκεκριμένο γνώρισμα δεν έχει τιμή. Η σημασιολογία της έλλειψης τιμής είναι τριπλή: δεν υπάρχει δυνατή τιμή (not applicable) υπάρχει δυνατή αλλά μη καταχωρημένη τιμή, την οποία γνωρίζουμε (missing) δε γνωρίζουμε (not known)

Η οντότητα ΤΜΗΜΑ και οι αντιπρόσωποί της Η οντότητα ΤΜΗΜΑ αναπαριστάνει όλα τα νοητά αντικείμενα του πραγματικού κόσμου που είναι τμήματα του εκπαιδευτικού ιδρύματος. Ισοδύναμα λέμε: Κάθε ένα τμήμα του ιδρύματος είναι ένας αντιπρόσωπος της οντότητας ΤΜΗΜΑ. Μας δίνεται ότι το ίδρυμα έχει δύο τμήματα: Τ1 και Τ2: ΤΜΗΜΑΤΑ Τ1 ΤΜΗΜΑ Τ2

Ποιες είναι οι οντότητες στο παρακάτω παράδειγμα Θεωρήστε ένα pet store. To pet store μπορεί να πουλάει μέχρι 30 σκύλους και γάτες και μέχρι 15 πτηνά. Για κάθε κατοικίδιο ζώο το κατάστημα κρατάει ένα ιστορικό εμβολίων. Οι φίλοι του ανθρώπου είναι οι σκύλοι και οι γάτες. Σε καθένα από αυτά τα ζώα είναι εμφυτευμένο ένα μικροτσίπ με σκοπό την ανεύρεσή του σε περίπτωση που χαθεί. Σε κάθε μικριτσίπ αποθηκεύεται ένας μοναδικός κωδικός ταυτότητας για το ζώο. 25

Απάντηση Πτηνό Pet_Store Κατοικίδιο_Ζώο Ιστορικό_Εμβολίων Φίλος_του_Ανθρώπου Μικροτσίπ - id_number : Integer Σκύλος Γάτα 26

27 Χαρακτηριστικά Οι οντότητες έχουν ιδιότητες που τις περιγράφουν. Οι ιδιότητες αυτές ονομάζονται κατηγορήματα/χαρακτηριστικά/γνωρίσματα (attributes). Τα γνωρίσματα αναπαριστάνονται με την έλλειψη. Τα γνωρίσματα των οντοτήτων αναπαριστούν συγκεκριμένα δεδομένα που θέλουμε να αποθηκεύσουμε στη βάση δεδομένων

28 Γνωρίσματα Μας δίνεται ότι στη βάση δεδομένων για κάθε τμήμα θα αποθηκεύεται, το όνομά του και το τηλέφωνό του τμήματος: Όνομα Τηλέφωνο ΤΜΗΜΑ Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

29 Στο ΔΟΣ: γνωρίσματα, όχι τιμές Στο ΔΟΣ δεν εμφανίζονται πιθανές τιμές χαρακτηριστικών Στα μέλη ενός συνόλου, ωστόσο, μπορεί να εμφανίζεται οι τιμές κάθε γνωρίσματος Μας δίνεται ότι στο ίδρυμα υπάρχει το Τμήμα Πληροφορικής με τηλέφωνο 2321054321 και το Τμήμα Λογιστική με τηλέφωνο 2321065432. ΤΜΗΜΑΤΑ (Τμήμα Πληροφορικής, 23210 54321) Όνομα Τηλέφωνο Τ1 (Τμήμα Λογιστικής, 23210 65432) ΤΜΗΜΑ Τ2 Αναπαράσταση τμημάτων ως μέλη συνόλου Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής Αναπαράσταση τμημάτων με την οντότητα

Είδη γνωρισμάτων 30 Πρωτεύον (primary attribute) Σύνθετο (composite attribute) Πολλαπλών Τιμών (multi-valued attribute) Συναγόμενο (derived attribute)

Πρωτεύον γνώρισμα 31 έχει μοναδικές τιμές Κάθε οντότητα πρέπει να έχει πρωτεύων γνώρισμα Π.χ: ο Αριθμός Φορολογικού Μητρώου καθηγητή είναι πρωτεύον γνώρισμα, επειδή δεν είναι δυνατό δύο καθηγητές να έχουν το ίδιο ΑΦΜ ΑΦΜ Τηλέφωνο ΚΑΘΗΓΗΤΗΣ

Η έννοια «κλειδί» Επομένως το υποσύνολο των κατηγορημάτων μιας οντότητας που χαρακτηρίζουν μονοσήμαντα ένα στιγμιότυπο ονομάζεται κλειδί. Δυο βασικοί περιορισμοί που ισχύουν για κάθε κλειδί είναι οι ακόλουθοι: το κλειδί μιας οντότητας δε μπορεί να έχει τιμή NULL, δυο διαφορετικά στιγμιότυπα της ίδιας οντότητας δε μπορεί να έχουν ίδιες τιμές στο κλειδί τους. Ως πρωτεύον γνώρισμα ή πρωτεύων κλειδί ορίζουμε το κλειδί εκείνο που ο σχεδιαστής της βάσης επιλέγει να χρησιμοποιήσει σε ένα συγκεκριμένο εννοιολογικό σχήμα (συνήθως αυτό είναι και το μικρότερο δυνατό [minimal]). 6/3/2018

Σύνθετο Γνώρισμα 33 Αποτελείται απλούστερα χαρακτηριστικά Π.χ: Η διεύθυνση ΚΑΘΗΓΗΤΗΣ Διεύθυνση Οδός Αριθμός Πόλη

Γνώρισμα Πολλαπλών Τιμών 34 Μπορεί να πάρει περισσότερες από μία τιμές Π.χ: τα πτυχία ενός Καθηγητή ΚΑΘΗΓΗΤΗΣ Πτυχία

Συναγόμενο Γνώρισμα 35 Υπολογίζεται με βάση άλλα χαρακτηριστικά Π.χ: η ηλικία του καθηγητή ΚΑΘΗΓΗΤΗΣ Ηλικία ΗμερΓέννησης

Άσκηση Φτιάξτε το διάγραμμα για την ταυτότητά σας Πιο είναι το πρωτεύον γνώρισμα 36

Συσχέτιση (όχι σχέση) 37 Οι οντότητες συσχετίζονται μεταξύ τους. Η συσχέτιση μεταξύ δύο οντοτήτων μπορεί να δείχνει συνεργασία, αλληλεπίδραση ή άλλου είδους σχέση. Μια συσχέτιση είναι μια λογική σύνδεση (συσχέτιση - με την καθημερινή έννοια αλληλεπίδραση, εξάρτηση) μεταξύ δύο ή περισσότερων οντοτήτων, την οποία επιθυμούμε να αποθηκεύσουμε στη βάση δεδομένων. Η συσχέτιση συμβολίζεται με έναν ρόμβο. Μέσα στον ρόμβο αναγράφεται η ονομασία της συσχέτισης που είναι ένα ρήμα. Για παράδειγμα: ο καθηγητής ανήκει στο Τμήμα ΚΑΘΗΓΗΤΗΣ Ανήκει ΤΜΗΜΑ

Συσχέτιση 38 Μία συσχέτιση διαβάζεται πάντοτε με δύο τρόπους. Στο παρακάτω παράδειγμα η συσχέτιση «Ανήκει» διαβάζεται: Ο Καθηγητής ανήκει σε Τμήμα ΚΑΙ Σε Τμήμα ανήκει Καθηγητής ΚΑΘΗΓΗΤΗΣ Ανήκει ΤΜΗΜΑ Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

Αναπαράσταση συσχέτισης ως σύνολο Μία συσχέτιση μπορεί να αναπαρασταθεί ως ένα σύνολο, όπως φαίνεται στο επόμενο παράδειγμα Στο τμήμα Πληροφορικής ανήκουν 2 καθηγητές και στο τμήμα Λογιστικής 3 (Ποιοί;) ΚΑΘΗΓΗΤΕΣ (012345678, Ανδρέας Ζάχαρης) ΑΝΗΚΟΥΝ Κ1 (023456789, Γεωργία Γλύκα) Κ2 (034567891, Γεωργία Πίκρα) Κ3 (045678912, Ελένη Ξύδη) Κ4 (056789123, Ζαχαρίας Μούστος) Κ5 Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής Α1 Α2 Α3 Α4 Α5 ΤΜΗΜΑΤΑ (Τμήμα Πληροφορικής, 23210 54321) Τ1 (Τμήμα Λογιστικής, 23210 65432) Τ2

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

Συμμετοχή 41 Ολική: όλοι οι αντιπρόσωποι μίας οντότητας συμμετέχουν σε μία συσχέτιση Η ολική συμμετοχή αναπαριστάνεται με συνεχόμενη γραμμή: Μερική: ορισμένοι (και όχι όλοι) οι αντιπρόσωποι μίας οντότητας συμμετέχουν σε μία συσχέτιση Η μερική συμμετοχή αναπαριστάνεται με διακεκομμένη γραμμή:

Παράδειγμα Συμμετοχής Ολική συμμετοχή από την πλευρά της οντότητας Α: ΟΛΟΙ οι αντιπρόσωποι της οντότητας Α συμμετέχουν στη συσχέτιση Σ Μερική συμμετοχή από την πλευρά της οντότητας Β: ΟΡΙΣΜΕΝΟΙ αντιπρόσωποι της οντότητας Β συμμετέχουν στην συσχέτιση Σ. Α Σ Β Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

43 Παράδειγμα συμμετοχής Η παρακάτω συσχέτιση έχει ολική συμμετοχή από το μέρος του Α και μερική από το μέρος του Β. Α Σ Β Α1 Σ1 Β1 Α2 Σ2 Σ3 Β2 Β3 Α Σ Β4 Β Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

Πολλαπλότητα 44 Επάνω σε κάθε γραμμή ενός ΔΟΣ που συνδέει μία συσχέτιση με μία οντότητα σημειώνουμε είτε το σύμβολο 1 είτε το σύμβολο Μ (που διαβάζεται ΠΟΛΛΑ). Καθένα από τα σύμβολα αυτά από μόνο του λέγεται πολλαπλότητα και δίνει σημαντικές πληροφορίες για την συσχέτιση. Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

45 Παράδειγμα πολλαπλότητας Κάποιος αντιπρόσωπος από το Α συσχετίζεται με ΠΟΛΛΟΥΣ αντιπροσώπους Α του Β Α1 Σ Σ1 Β Β1 Κάθε αντιπρόσωπος από το Β συσχετίζεται με ΈΝΑΝ αντιπρόσωπο του Α Α2 Σ2 Σ3 Β2 Β3 Β4 Α 1 Μ Σ Β Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

Συσχέτιση «Ένα Προς Πολλά» 46 Η πολλαπλότητα είναι 'πολλά' (Μ) από το μέρος της οντότητας Α και 'ένα' (1) από το μέρος της Β. Επομένως ο λόγος πολλαπλότητας της συσχέτισης Σ είναι 'πολλά προς ένα' αν αναγνώσουμε τη συσχέτιση ξεκινώντας από την οντότητα Α. Α 1 Μ Σ Β Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

Συσχέτιση «Πολλά προς Ένα» Υπενθύμιση: Κάθε συσχέτιση διαβάζεται και προς τις δύο κατευθύνσεις επομένως, Ο λόγος πολλαπλότητας της συσχέτισης είναι 'ένα προς πολλά' αν διαβάσουμε τη συσχέτιση ξεκινώντας από την οντότητα Β. Επειδή, όταν αναφερόμαστε σε μία συσχέτιση, δεν προσδιορίζουμε την οντότητα από την οποία ξεκινάμε την ανάγνωση, ο λόγος 'ένα προς πολλά' είναι ίδιος με τον λόγο πολλαπλότητας 'πολλά προς ένα'. Α 1 Μ Σ Β Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

Λόγος Πολλαπλότητας 48 Δείχνει με πόσους αντιπροσώπους μίας άλλης οντότητες συσχετίζεται ένας αντιπρόσωπος κάποιας οντότητας Πιθανές τιμές: Ένα προς Ένα (1:1) Ένα προς Πολλά (1:Μ ή 1:Ν) που είναι ίδιο με το Πολλά προς Ένα Πολλά προς Πολλά (Μ:Μ ή Ν:Ν) Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

49 Παράδειγμα Λόγου Πολλαπλότητας Κάποιο τμήμα έχει εγγεγραμμένους ΠΟΛΛΟΥΣ φοιτητές Κάθε φοιτητής εγγράφεται σε ΈΝΑ τμήμα ΦΟΙΤΗΤΗΣ Ν Εγγρά-φεται 1 ΤΜΗΜΑ Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

Προσδιορισμός της συμμετοχής Ας υποθέσουμε ότι η συσχέτιση Σ συνδέει τις οντότητες Α και Β. Για να προσδιορίσουμε την συμμετοχή της οντότητας Α σε μία συσχέτιση Σ κάνουμε την εξής ερώτηση: «Όλα τα Α συμμετέχουν στη Σ;» Αν η απάντηση στην ερώτηση αυτή είναι «ΝΑΙ» τότε η συσχέτιση από το μέρος του Α είναι ολική. Αν η απάντηση στην ερώτηση αυτή είναι «ΟΧΙ, υπάρχει τουλάχιστον ένα Α που δεν συμμετέχει στη Σ», τότε η συσχέτιση από το μέρος του Α είναι μερική. Με την αντίστοιχη ερώτηση «Όλα τα Β συμμετέχουν στη Σ;» προσδιορίζουμε τη συμμετοχή του Β.

Προσδιορισμός της πολλαπλότητας 51 Ας υποθέσουμε ότι η συσχέτιση Σ συνδέει τις οντότητες Α και Β. Για να προσδιορίσουμε την πολλαπλότητα από το μέρος της οντότητας Β κάνουμε την εξής ερώτηση: «Κάθε Α συσχετίζεται με ΕΝΑ Β;» Αν η απάντηση στην ερώτηση αυτή είναι «ΝΑΙ» τότε η πολλαπλότητα από το μέρος του Β είναι 1. Αν η απάντηση στην ερώτηση αυτή είναι «ΟΧΙ, υπάρχει τουλάχιστον ένα Α που συσχετίζεται με ΠΟΛΛΑ Β», τότε η πολλαπλότητα από το μέρος του Β είναι Μ. Με την αντίστοιχη ερώτηση «Κάθε Β συσχετίζεται με ΕΝΑ Α;» προσδιορίζουμε την πολλαπλότητα από το μέρος της οντότητας Α. Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

Ασθενείς Οντότητες 52 Κανονικά κάθε οντότητα πρέπει να έχει ένα πρωτεύον χαρακτηριστικό. Υπάρχουν περιπτώσεις που αυτό δεν είναι δυνατό. Οντότητες που δεν έχουν δικό τους πρωτεύον κλειδί λέγονται ασθενείς οντότητες Οι οντότητες αυτές προσδιορίζονται μόνο σε σχέση με κάποιες άλλες οντότητες

Παράδειγμα Ασθενούς Οντότητας 53 ΑΦΜ Μερικό πρωτεύον χαρακτηριστικό Όνομα ΚΑΘΗΓΗΤΗΣ Έχει ΠΑΙΔΙ Προσδιορίζουσα οντότητα Προσδιορίζουσα συσχέτιση

54 Αναδρομικές Συσχετίσεις Συνήθως μία συσχέτιση συνδέει μία οντότητα με μία άλλη οντότητα Υπάρχουν συσχετίσεις που συνδέουν μία οντότητα με τον εαυτό της. Οι συσχετίσεις αυτές λέγονται αναδρομικές Ο προσδιορισμός τους διευκολύνεται από την κατάλληλη λεκτική διαμόρφωση της πρότασης Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

55 Λεκτική Διαμόρφωση Οι σπουδαστές παρακολουθούν μαθήματα Ουσιαστικό Ρήμα Ουσιαστικό ΣΠΟΥΔΑΣΤΗΣ Παρακο-λουθεί ΜΑΘΗΜΑ Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

Εντοπισμός Αναδρομικής Συσχέτισης 56 [ορισμένα] Μαθήματα προαπαιτούν [κάποια άλλα] μαθήματα Προ-απαιτεί Ρήμα Ουσιαστικό Ουσιαστικό ΜΑΘΗΜΑ Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

Τριαδικές Συσχετίσεις Η συσχέτιση βαθμού > 2 είναι μια έννοια που συχνά προβληματίζει καθώς: ελάχιστη θεωρητική δουλειά έχει δημοσιευτεί στο συγκεκριμένο θέμα, κάποια παλιότερα βιβλία-κείμενα «αποκηρύσσουν» τη χρήση τριαδικών, ή n-αδικών γενικότερα (n>2) συσχετίσεων, συστήνοντας τη μετατροπή τους σε ισοδύναμο σχήμα με δυαδικές συσχετίσεις, κανένα από τα υπάρχοντα αυτοματοποιημένα εργαλεία (CASE tools) σχεδίασης βάσεων δεδομένων δεν υποστηρίζουν τον έλεγχο της σημασιολογικής ορθότητας τριαδικών και n-αδικών συσχετίσεων, συνεπώς και τη μετάβαση σε ένα αντίστοιχο λογικό σχήμα με αυτοματοποιημένο τρόπο.

Γιατί Τριαδικές Συσχετίσεις; ΜΑΘΗΤΗΣ ΔΙΔΑΣΚΕΤΑΙ ΜΑΘΗΜΑ Μ Μ ΠΑΡΑΚΟΛΟΥΘΕΙ Ν ΑΙΘΟΥΣΑ ΦΙΛΟΞΕΝΕΙ ΜΑΘΗΤΗΣ ΔΙΔΑΣΚΕΤΑΙ ΜΑΘΗΜΑ Μ Κ ΑΙΘΟΥΣΑ Ν Ν Ν Μ Α Β Έστω η βάση δεδομένων ενός πανεπιστημιακού τμήματος, που καταγράφει πληροφορίες για τη διδασκαλία των μαθημάτων. Έστω οι οντότητες ΜΑΘΗΤΗΣ, ΜΑΘΗΜΑ, ΑΙΘΟΥΣΑ κι η γενική αρχή «οποιοσδήποτε μπορεί να διδάσκεται οτιδήποτε, οπουδήποτε». Πώς θα μπορούσαμε να αποτυπώσουμε σε ένα ΔΟΣ που περιλαμβάνει μόνο τις παραπάνω οντότητες το γεγονός πως ο φοιτητής Γεωργίου διδάσκεται Μαθηματικά στην αίθουσα Α1;

Τριαδικές Συσχετίσεις - Λόγος Πληθικότητας Για τον καθορισμό του εξετάζουμε ένα δυνητικό ζευγάρι στιγμιοτύπων (για κάθε συνδυασμό 2 οντοτήτων) σε αντιπαράθεση με τα στιγμιότυπα της τρίτης οντότητας. σε κάθε 1-1-1 συσχέτιση όλες οι έμμεσες δυαδικές συσχετίσεις είναι Μ-Ν. Α Γ Β Α1 Β1 Γ1 Α2 Β2 Γ2 Α1 Β2 Γ3 Α3 Β3 Γ3

Προσδιορισμός Κλειδιού μιας Τριαδικής Συσχέτισης Έστω η συσχέτιση R(A,B,C). Ο πίνακας απεικονίζει το κλειδί συναρτήσει των πληθικοτήτων των οντοτήτων. Α Γ Β card(a) card(b) card(c) Κλειδί Ν Ν Ν ABC Ν Ν 1 AB Ν 1 1 AB ή AC 1 1 1 AB ή AC ή BC

61 ΔΟΣ και Περιορισμοί Δεν επιτρέπει την καταγραφή των περιορισμών που πρέπει να ικανοποιούνται από τα δεδομένα στο στάδιο της υλοποίησης της βάσης δεδομένων, με χρήση ενός ΣΔΒΔ, είναι δυνατή η περιγραφή των περιορισμών. Οι περιορισμοί αυτοί αποθηκεύονται μόνιμα στον κατάλογο του ΣΔΒΔ και επιβάλλονται αυτόματα από αυτό. Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

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

Συλλογή πληροφοριών 64 Οι πληροφορίες συλλέγονται από: Συνεντεύξεις με χρήστες Επιχειρησιακά έγγραφα Επιτόπια παρατήρηση Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

65 Χρήση Κατάλληλων Εργαλείων Υπάρχουν ειδικά προγράμματα που μπορούν να βοηθήσουν στην ανάπτυξη ΜΟΣ: Γενικά σχεδιαστικά προγράμματα π.χ. Smartdraw (www.smartdraw.com) Εξειδικευμένα προγράμματα CASE tools τα οποία ελέγχουν και επιβάλλουν κανόνες σχεδίασης Π.χ: S-designer Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

66 Σταδιακή Ανάπτυξη ΔΟΣ Α στάδιο: συλλέγονται πληροφορίες από κάθε χρήστη χωριστά Για κάθε χρήστη αναπτύσσεται το ΔΟΣ που περιγράφει τις πληροφορίες που έδωσε ο χρήστης αυτός Β στάδιο: τα επιμέρους ΔΟΣ των χρηστών ενοποιούνται σε ένα ενιαίο (συγκεντρωτικό ΜΟΣ) Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

Παράδειγμα Έχετε τις έννοιες: δισκοπωλείο, πελάτης, μουσικό συγκρότημα, αγαπημένο συγκρότημα, cd, είδος μουσικής, μουσικός Δώστε ένα ΔΟΣ

Παράδειγμα ΔΙΣΚΟΠΩΛΕΙΟ ΠΕΛΑΤΗΣ Μ AΓ. ΣΥΓK. Ν Μ Μ Κ ΣΥΓΚΡΟΤΗΜΑ Μ Ν Μ 1 CD Ν 1 Ν Ν ΕΙΔΟΣ ΜΟΥΣ. ΜΟΥΣΙΚΟΣ Ονοματίστε τις κενές συσχετίσεις

ΔΙΣΚΟΠΩΛΕΙΟ Παράδειγμα ΠΕΛΑΤΗΣ Μ AΓΑΠΗΜΕΝΟ ΣΥΓΚ. Ν Μ ΔΙΑΘΕΤΕΙ Μ ΑΓΟΡΑ Κ ΣΥΓΚΡΟΤΗΜΑ Μ Ν Μ 1 CD Ν ΑΦΟΡΑ 1 Ν ΠΑΙΖΕΙ ΑΝΗΚΕΙ Ν ΕΙΔΟΣ ΜΟΥΣ. ΜΟΥΣΙΚΟΣ

Άσκηση Διαχωρίστε τις οντότητες και τις συσχετίσεις στις πιο κάτω περιπτώσεις επιβάτης, θέση πλοίου, κράτηση οντότητες: επιβάτης, θέση πλοίου συσχέτιση: κράτηση γιατρός, επίσκεψη, ασθενής, συνταγή, διάγνωση...

Απάντηση 1 ΓΙΑΤΡΟΣ ΕΠΙΣΚΕΨΗ 1 ΔΕΧΕΤΑΙ Ν 1 Ν ΚΑΝΕΙ 1 ΑΣΘΕΝΗΣ ΑΠΟΤΕΛΕΣΜΑ 1 ΣΥΝΤΑΓΗ ΔΙΑΓΝΩΣΗ γιατρός, επίσκεψη, ασθενής, συνταγή, διάγνωση

Απάντηση 2 ΓΙΑΤΡΟΣ ΑΣΘΕΝΗΣ Ν ΕΠΙΣΚΕΨΗ Μ ΔΙΑΓΝΩΣΗ ΣΥΝΤΑΓΗ Παρατηρείτε κάποιο πρόβλημα σε σχέση με τον αριθμό των επισκέψεων; Πιθανή αντιμετώπιση;

Απάντηση 3 ΓΙΑΤΡΟΣ ΑΣΘΕΝΗΣ 1 1 ΔΕΧΕΤΑΙ Ν ΠΡΑΓΜΑΤΟΠΟΙΕΙ Μ Πλέον υποστηρίζονται πολλές δυνητικά επισκέψεις ενός ασθενή στον ίδιο γιατρό. ΕΠΙΣΚΕΨΗ ΗΜ/ΝΙΑ ΣΥΝΤΑΓΗ ΔΙΑΓΝΩΣΗ