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

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

Κανονικοποίηση. Παύλος Εφραιμίδης. Βάσεις Δεδομένων Κανονικοποίηση 1

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

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

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

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


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

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

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

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

Το Σχεσιακό Μοντέλο 2

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

Κανονικοποίηση. Άτυπες Οδηγίες. Παράδειγµα. Αξιολόγηση Σχεσιακών Σχηµάτων Β. Περιττές Τιµές και Ανωµαλίες Ενηµέρωσης

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

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

Lecture 21: Functional Dependencies and Normalization

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

Άσκηση 2 - Κεχρής, Κεφάλαιο 8: Κανονικοποίηση

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

καλών σχεσιακών σχημάτων

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

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

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

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

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

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

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

Βάσεις Δεδομένων : Λογικός Σχεδιασμός 1. καλών σχεσιακών σχημάτων. Λογικός Σχεδιασμός Σχεσιακών Σχημάτων. Γενικές Κατευθύνσεις.

Λογικός Σχεδιασμός Σχεσιακών Σχημάτων: Αποσύνθεση

καλών σχεσιακών σχημάτων

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

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

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

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

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

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

Κανονικές Μορφές. Βάσεις Δεδομένων : Κανονικές Μορφές. ηλαδή, i = 1,.., n R i R. Σύντομη επανάληψη αποσύνθεσης.

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

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

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

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

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

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

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

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

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

Βάσεις Δεδομένων. Ενότητα 5: ΚΑΝΟΝΙΚΟΠΟΙΗΣΗ ΒΑΣΗΣ ΔΕΔΟΜΕΝΩΝ. Πασχαλίδης Δημοσθένης Τμήμα Ιερατικών σπουδών

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

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

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

Εργαστήριο 5o. Σχέσεις πινάκων Ακεραιότητα αναφορών. Ευάγγελος Γ. Καραπιδάκης

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

Εκπαιδευτικό Εργαλείο Κανονικοποίησης

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

H SQL είναι η γλώσσα για όλα τα εμπορικά σχεσιακά συστήματα διαχείρισης βάσεων δεδομένων


ΕΣΔ 232: ΟΡΓΑΝΩΣΗ ΔΕΔΟΜΕΝΩΝ ΣΤΗ ΚΟΙΝΩΝΙΑ ΤΗΣ ΠΛΗΡΟΦΟΡΙΑΣ. Ακαδημαϊκό Έτος , Εαρινό Εξάμηνο. Εργαστηριακή Άσκηση 2 24/01/2012

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

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

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

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

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

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

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

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

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

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

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

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

Κανονικές Μορφές Σχεδιασµός Σχεσιακών Σχηµάτων

Κανονικές Μορφές. Συνενώσεις Άνευ Απωλειών. Προσοχή με τις τιμές null στην αποσύνθεση

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

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

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

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

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

ΘΕΜΑΤΑ. Θέμα 1 ο Σύμφωνα με τους παραπάνω πίνακες και τη θέση που έχουν τα ξένα κλειδιά βρείτε τους

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

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

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

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

Συναρτησιακές Εξαρτήσεις. Βάσεις εδοµένων Ευαγγελία Πιτουρά 1

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

Λογικός Σχεδιασµός Σχεσιακών Σχηµάτων: Αποσύνθεση

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

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

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

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

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

Σχεδιασµός Σχεσιακών Σχηµάτων

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

Κανονικές Μορφές 8ο Φροντιστήριο. Βάρσος Κωνσταντίνος

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

Copyright 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley, ΕλληνικήΈκδοση, ίαυλος

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

Σχεδιασµός Σχεσιακών Σχηµάτων

Λογικός Σχεδιασµός Σχεσιακών Σχηµάτων: Αποσύνθεση. Βάσεις εδοµένων Ευαγγελία Πιτουρά 1

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

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

Transcript:

Θέματα ανακεφαλαίωσης 13 Ιουνίου 2013 1. Ορίστε την έννοια σχήμα σχέσης και αναλύστε τα στοιχεία του ορισμού σας. Υποθέστε ότι θέλουμε να αποθηκεύσουμε πληροφορίες για τα μέλη ενός πεζοπορικού συλλόγου και συγκεκριμένα το ονοματεπώνυμο, το τηλέφωνο και την ημερομηνία εγγραφής τους στο σύλλογο. Περιγράψτε ένα σχήμα σχέσης (και τα επιμέρους του στοιχεία) που θα μπορούσε να χρησιμοποιηθεί για αυτό το σκοπό. 2. Ορίστε την έννοια μίας σχέσης υπαγόμενης σε ένα σχήμα σχέσης. Υποθέστε ένα σχήμα σχέσης R με γνωρίσματα ΟΜΑΔΑ, ΕΔΡΑ το οποίο χρησιμοποιείται για να αποθηκεύσει ομάδες βόλεϋ και την έδρα τους. Γράψτε δύο σχέσεις που θα μπορούσαν να υπάγονται σε αυτό το σχήμα σχέσης. 3. Ποιοι είναι οι τέσσερις τύποι περιορισμών στο σχεσιακό μοντέλο; 4. Ονομάστε τρεις πράξεις ενημέρωσης του σχεσιακού μοντέλου. Είναι απαραίτητες και οι τρεις; 5. Ποιους περιορισμούς μπορεί να παραβιάσει η πράξη της εισαγωγής στο σχεσιακό μοντέλο; 6. Ποιους περιορισμούς μπορεί να παραβιάσει η πράξη της διαγραφής στο σχεσιακό μοντέλο; 7. Ορίστε την έννοια υπερ-κλειδί. Ορίστε την έννοια κλειδί. Υπάρχει σχέση χωρίς κλειδί; Υπάρχει σχέση χωρίς υπερ-κλειδί; 8. Περιγράψτε την επιλογή ως πράξη ανάκτησης του σχεσιακού μοντέλου. Περιγράψτε τη σύνταξη και τη λειτουργία της. Δώστε ένα παράδειγμα πράξης επιλογής σε μία σχέση δικιά σας επιλογής. 9. Περιγράψτε την προβολή ως πράξη ανάκτησης του σχεσιακού μοντέλου. Περιγράψτε τη σύνταξη και τη λειτουργία της. Δώστε ένα παράδειγμα πράξης προβολής σε μία σχέση δικιά σας επιλογής. 10. Δώστε ένα πλήρες σύνολο πράξεων ανάκτησης του σχεσιακού μοντέλου. Είναι η συνένωση μία από αυτές τις πράξεις; Αν όχι, περιγράψτε πώς μπορεί να υλοποιηθεί χρησιμοποιώντας τις πράξεις ανάκτησης του πλήρους συνόλου. 11. Ποια είναι η διαφορά της εσωτερικής από την εξωτερική συνένωση; Δώστε ένα παράδειγμα. 1

12. Χαρακτηρίστε τις παρακάτω προτάσεις ως σωστές ή λάθος. Αφαιρώντας ένα γνώρισμα από ένα σχήμα σχέσης, προκύπτει άλλο σχήμα σχέσης. Αφαιρώντας μία πλειάδα από μία σχέση προκύπτει μία άλλη σχέση. Η σειρά των γνωρισμάτων σε ένα σχήμα σχέσης δεν έχει σημασία. Η σειρά των πλειάδων σε μία σχέση δεν έχει σημασία. Δύο γνωρίσματα σε ένα σχήμα σχέσης δεν μπορούν να έχουν το ίδιο όνομα. Δύο γνωρίσματα σε ένα σχήμα σχέσης δεν μπορεί να έχουν το ίδιο πεδίο ορισμού. Προσθέτοντας ένα γνώρισμα σε ένα υπερ-κλειδί, προκύπτει νέο υπερ-κλειδί. Αφαιρώντας ένα γνώρισμα από ένα υπερ-κλειδί, προκύπτει νέο υπερ-κλειδί. Αφαίρωντας ένα γνώρισμα από ένα κλειδί, προκύπτει νέο κλειδί. Προσθέτοντας ένα γνώρισμα σε ένα κλειδί, προκύπτει υπερ-κλειδί. 13. Άσκησεις 6.18, 6.19, 6.20 από τις φωτοτυπίες. 14. Ορίστε την έννοια της συναρτησιακής εξάρτησης (functional dependency). Αν υποθέσουμε ότι έχουμε ένα σχήμα σχέσης R με κάποια γνωρίσματα A 1, A 2,..., A n και ότι Χ και Υ είναι δύο υποσύνολα των γνωρισμάτων της R. Λέμε ότι το Υ εξαρτάται συναρτησιακά από το Χ και συμβολίζουμε X Y αν ισχύει το εξής: Όποτε για οποιεσδήποτε δύο πλειάδες t 1, t 2 μιας οποιασδήποτε σχέσης r(r) ισχύει ότι t 1 [X] = t 2 [X] τότε αναγκαστικά t 1 [Y ] = t 2 [Y ]. Λέμε επίσης ότι το Υ εξαρτάται από το Χ ή ότι το Χ καθορίζει το Υ. 15. Ορίστε τη μεταβατική εξάρτηση (transitive dependency). Μία συναρτησιακή εξάρτηση X Z λέγεται μεταβατική αν υπάρχει κάποιο μη-πρωτεύον σύνολο γνωρισμάτων Υ τέτοιο ώστε να ισχύει ότι X Y και Y Z. (Τα σύνολα Χ, Υ, Ζ πρέπει να είναι ξένα μεταξύ τους). 16. Τι είναι οι ανωμαλίες ενημέρωσης (update anomalies); Δώστε παραδείγματα. Ανωμαλίες εισαγωγής (insert anomalies). Ανωμαλίες διαγραφής (delete anomalies). Ανωμαλίες τροποποίησης (update anomalies). Ας θεωρήσουμε ένα σχήμα σχέσης για τους εργαζόμενους σε μία εταιρεία. Θέλουμε για κάθε εργαζόμενο να αποθηκεύεται το ΑΜΚΑ και το όνομά του και το τμήμα στο οποίο εργάζεται. Για κάθε τμήμα θέλουμε επίσης τον κωδικό του, το όνομά του και το ΑΜΚΑ του προϊσταμένου. Ας υποθέσουμε ότι από κακό σχεδιασμό αποφασιζόταν ότι οι πληροφορίες που αφορούν το τμήμα θα έπρεπε να καταγράφονται στις πλειάδες των εργαζομένων. Τότε ο πίνακας ΕΡΓΑΖΟΜΕΝΟΙ θα ήταν όπως στον πίνακα 1: Ο σχεδιασμός είναι προφανώς λάθος. Το σωστό θα ήταν να δημιουργηθεί ένας ξεχωριστός πίνακας για τα τμήματα με κλειδί τον κωδικό του τμήματος και στον πίνακα ΕΡΓΑΖΟΜΕΝΟΙ να υπήρχε μόνο το πεδίο ΚΩΔΤΜΗΜ το οποίο θα ήταν εξωτερικό κλειδί στον πίνακα των τμημάτων. 2

Πίνακας 1: Σχέση ΕΡΓΑΖΟΜΕΝΟΙ ΑΜΚΑ ΟΝΟΜΑ ΚΩΔΤΜΗΜ ΟΝΤΜΗΜ ΑΜΚΑΠΡΟ 1 ΚΥΡΙΑΚΟΣ 1 ΠΩΛΗΣΕΙΣ 500 2 ΣΤΕΛΙΟΣ 1 ΠΩΛΗΣΕΙΣ 500 3 ΓΙΑΝΝΗΣ 2 ΑΝΑΠΤΥΞΗ 600 4 ΕΙΡΗΝΗ 2 ΑΝΑΠΤΥΞΗ 600 Οι ανωμαλίες εισαγωγής εκδηλώνονται με διάφορους τρόπους. Αν επιχειρήσουμε να εισαγάγουμε μία νέα εγγραφή ενός υπαλλήλου στο τμήμα πωλήσεων θα πρέπει να επανεισάγουμε όλα τα στοιχεία που έχουν να κάνουν με το τμήμα πωλήσεων. Αν κάνουμε λάθος στο όνομα ή στο ΑΜΚΑ του προϊσταμένου θα φαίνεται σαν ο εργαζόμενος να υπάγεται σε ένα νέο τμήμα. Επίσης, αν θέλουμε να εισάγουμε έναν εργαζόμενο ο οποίος δεν έχει ακόμα ενταχθεί σε ένα τμήμα θα πρέπει να βάλουμε πολλές NULL τιμές στα γνωρίσματα του τμήματος ενώ με ένα σωστό σχεδιασμό θα αρκούσε μία. Επίσης αν θέλουμε να εισάγουμε ένα καινούριο τμήμα το οποίο δεν έχει ακόμα εργαζόμενους τότε θα έπρεπε να βάλουμε NULL τιμές στα αντίστοιχα γνωρίσματα του εργαζόμενου αλλά αυτό θα ήταν πρόβλημα καθώς θέλουμε το ΑΜΚΑ του εργαζόμενου να είναι πρωτεύον κλειδί και αυτό δεν μπορεί να είναι NULL. Οι ανωμαλίες διαγραφής εκδηλώνονται όταν διαγράφουμε τον τελευταίο εργαζόμενο που εργάζεται σε ένα τμήμα. Σε αυτήν την περίπτωση μαζί με αυτόν διαγράφεται και το τμήμα αφού η σχετική πληροφορία δεν είναι καταγεγραμμένη πουθενά αλλού. Οι ανωμαλίες ενημέρωσης παρουσιάζονται όταν θέλουμε να τροποποιήσουμε κάποια παράμετρο ενός τμήματος. Αν θέλουμε π.χ. να αλλάξουμε το ΑΜΚΑ του προϊσταμένου του τμήματος πωλήσεων θα πρέπει να το αλλάξουμε σε όλες τις πλειάδες στις οποίες αυτό εμφανίζεται αλλιώς η βάση θα έχει λανθασμένα δεδομένα. 17. Ποιες είναι οι τρεις κανονικές μορφές που πρότεινε ο Codd; 1η: Όλα τα γνωρίσματα είναι μονότιμα με ατομικές τιμές. Ή αλλιώς: Κανένα γνώρισμα δεν έχει περισσότερες από μία τιμές και κανένα γνώρισμα δεν έχει σύνθετη τιμή. 2η: Δεν υπάρχει γνώρισμα συναρτησιακά εξαρτημένο από κάποιο γνήσιο υποσύνολο του πρωτεύοντος κλειδιού. 3η: Το σχήμα σχέσης είναι σε 2η κανονική μορφή και επιπλέον για κανένα μη-πρωτεύον γνώρισμα Ζ δεν υπάρχει μεταβατική εξάρτηση X Z όπου Χ το πρωτεύον κλειδί. 18. Χαρακτηρίστε τις παρακάτω προτάσεις ως σωστές (Σ) ή λάθος (Λ). Αν X Y τότε υποχρεωτικά Y X. (Λάθος) Αν X Y τότε αποκλείεται να ισχύει Y X. (Λάθος) Αν X Y και Y Z τότε X Z. (Σωστό) 3

Στις πραγματικές βάσεις δεδομένων, είναι υποχρεωτικό οι σχέσεις (πίνακες) να είναι τουλάχιστον σε δεύτερη κανονική μορφή. (Λάθος) Θα μπορούσε να υπάρχει ένα ΣΔΒΔ το οποίο αν του δίναμε μία βάση με μη-κενούς πίνακες, θα υπολόγιζε ποιες είναι οι συναρτησιακές εξαρτήσεις του σχήματος. (Λάθος) Θα μπορούσε να υπάρχει ένα ΣΔΒΔ το οποίο αν του δίναμε ένα σύνολο συναρτησιακών εξαρτήσεων θα μας ενημέρωνε αν το σχήμα της βάσης είναι σε κάποια κανονική μορφή. (Σωστό) Θα μπορούσε να υπάρχει ένα ΣΔΒΔ το οποίο αν του δίναμε ένα σύνολο συναρτησιακών εξαρτήσεων θα μετέτρεπε τις σχέσεις ώστε να είναι συμβατές με κάποια κανονική μορφή. (Σωστό) 19. Θεωρήστε το εξής σχήμα σχέσης ΔΡΟΜΟΛΟΓΙΑ(ΛΑΝΑΧ, ΛΠΡΟΟ, ΚΥ, ΔΕ, ΤΡ, ΤΕ, ΠΕ, ΠΑ, ΣΑ, ΤΙΜΗ, ΛΕΜΒΑΝ, ΛΕΜΒΠΡ) μιας ακτοπλοϊκής εταιρείας. Στον πίνακα κατακράφονται τα δρομολόγια της, οι μέρες της βδομάδας που αυτά εκτελούνται, η τιμή του εισιτηρίου και τα λεμβουχικά τέλη του λιμανιού αναχώρησης και του λιμανιού προορισμού. Ποιο θα μπορούσε να είναι ένα κλειδί αυτού του σχήματος σχέσης; Σε ποια κανονική μορφή βρίσκεται; Μπορείτε να το κανονικοποιήσετε; Κλειδί του σχήματος σχέσης θα μπορούσε να είναι το ζεύγος (ΛΑΝΑΧ, ΛΠΡΟΟ). Είναι σε 1η κανονική μορφή αφού δεν υπάρχουν πλειότιμα ή σύνθετα γνωρίσματα αλλά όχι σε 2η γιατί υπάρχουν οι εξαρτήσεις ΛΑΝΑΧ ΛΕΜΒΑΝ και ΛΠΡΟΟ ΛΕΜΒΠΡ δηλαδή ότι τα τέλη των λεμβούχων εξαρτώνται από το αντίστοιχο λιμάνι αλλά τόσο το ΛΑΝΑΧ όσο και το ΛΠΡΟΟ είναι γνήσια υποσύνολα του πρωτεύοντος κλειδιού. Ένας σχεδιασμός που θα έφερνε το σχήμα σε 2η κανονική μορφή θα ήταν να δημιουργηθούν δύο πίνακες ο ΛΙΜΑΝΙΑ(ΟΝΟΜΑ,ΛΕΜΒ) ο οποίος θα κρατούσε το όνομα του λιμανιού και τα αντίστοιχα λεμβουχικά τέλη και ο πίνακας δρομολόγια να γινόταν ΔΡΟΜΟΛΟΓΙΑ(ΛΑΝΑΧ, ΛΠΡΟΟ, ΚΥ, ΔΕ, ΤΡ, ΤΕ, ΠΕ, ΠΑ, ΣΑ, ΤΙΜΗ) όπου πάλι το ζεύγος (ΛΑΝΑΧ, ΛΠΡΟΟ) θα ήταν πρωτεύον κλειδί και τα ΛΑΝΑΧ και ΛΠΡΟΟ θα ήταν εξωτερικά κλειδιά προς το πεδίο ΟΝΟΜΑ της σχέσης λιμάνια. 20. Υποθέστε ότι μία βιβλιοθήκη θέλει να μηχανογραφηθεί. Για κάθε βιβλίο πρέπει να καταγράφεται ο τίτλος, το ISBN, το έτος έκδοσης, ο εκδότης και το έτος που γράφτηκε από τον συγγραφέα. Για κάθε εκδότη καταγράφεται το όνομα του εκδοτικού, το τηλέφωνο, το FAX, η ιστοσελίδα και η διεύθυνση. Για τους συγγραφείς καταγράφεται το όνομα, το επώνυμο, το έτος γέννησης και η χώρα καταγωγής. Φυσικά καταγράφονται και τα μέλη και συγκεκριμένα το ονοματεπώνυμο, το τηλέφωνο, η διεύθυνση, το email και τα βιβλία που έχουν δανειστεί. Για κάθε βιβλίο που δανείζεται ένα μέλος καταγράφεται η ημερομηνία δανεισμού και η ημερομηνία επιστροφής. Καταγράψτε τις οντότητες που εμφανίζονται και τις μεταξύ τους συσχετίσεις σε ένα διάγραμμα οντοτήτων-συσχετίσεων. Από εκεί προχωρήστε στον ορισμό των σχημάτων σχέσεων για το συγκεκριμένο μικρόκοσμο. Οι οντότητες στην παραπάνω περιγραφή είναι: ΒΙΒΛΙΑ ΕΚΔΟΤΕΣ ΣΥΓΓΡΑΦΕΙΣ 4

ΜΕΛΗ Οι μεταξύ τους συσχετίσεις είναι: ΓΡΑΦΟΥΝ (ΣΥΓΓΡΑΦΕΙΣ-ΒΙΒΛΙΑ) ΕΚΔΙΔΟΥΝ (ΕΚΔΟΤΕΣ-ΒΙΒΛΙΑ) ΔΑΝΕΙΖΟΝΤΑΙ (ΜΕΛΗ-ΒΙΒΛΙΑ) Το διάγραμμα οντοτήτων συσχετίσεων φαίνεται στο αρχείο er.pdf. Τα σχήματα των σχέσεων θα είναι ΒΙΒΛΙΑ(ISBN, ΤΙΤΛΟΣ, ΕΤΟΣΕΚΔ) ΣΥΓΓΡΑΦΕΙΣ(ΟΝΟΜΑ, ΕΠΩΝΥΜΟ, ΕΤΓΕΝ, ΧΩΡΑ) ΕΚΔΟΤΕΣ(ΟΝΟΜΑ, ΤΗΛ, FAX, WEB, ΔΝΣΗ) ΜΕΛΗ(ΑΔΤ, ΟΝΟΜΑ, ΕΠΩΝΥΜΟ, ΤΗΛ, MAIL, ΔΝΣΗ) ΓΡΑΦΟΥΝ(Σ_ΟΝΟΜΑ, Σ_ΕΠΩΝΥΜΟ, B_ISBN) ΔΑΝΕΙΖΟΝΤΑΙ(Μ_ΑΔΤ, Β_ISBN, ΗΜΔ, ΗΜΕ) ΕΚΔΙΔΟΥΝ(Ε_ΟΝΟΜΑ, Β_ISBN, ΕΤΟΣ) Στα σχήματα σχέσεων που προκύπτουν από τις συσχετίσεις μεταξύ των οντοτήτων έχουμε: στη ΓΡΑΦΟΥΝ, τα Σ_ΟΝΟΜΑ, Σ_ΕΠΩΝΥΜΟ είναι εξωτερικό κλειδί στη σχέση ΣΥΓΓΡΑ- ΦΕΙΣ και το Β_ISBN εξωτερικό στη σχέση ΒΙΒΛΙΑ. στη ΔΑΝΕΙΖΟΝΤΑΙ, το Μ_ΑΔΤ είναι εξωτερικό κλειδί στην ΜΕΛΗ και το Β_ISBN εξωτερικό στη ΒΙΒΛΙΑ. στην ΕΚΔΙΔΟΥΝ το Ε_ΟΝΟΜΑ είναι εξωτερικό στην ΕΚΔΟΤΕΣ και το Β_ISBN είναι εξωτερικό στη ΒΙΒΛΙΑ. 5