Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

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

Παρόμοιες παρουσιάσεις


Παρουσίαση με θέμα: "Βάσεις Δεδομένων Ενότητα 6: Κανονικοποίηση Αθανάσιος Σπυριδάκος Τμήμα Διοίκησης Επιχειρήσεων ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού."— Μεταγράφημα παρουσίασης:

1 Βάσεις Δεδομένων Ενότητα 6: Κανονικοποίηση Αθανάσιος Σπυριδάκος Τμήμα Διοίκησης Επιχειρήσεων ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα

2 Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύπου άδειας χρήσης, η άδεια χρήσης αναφέρεται ρητώς. 2

3 Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού έργου του διδάσκοντα. Το έργο «Ανοικτά Ακαδημαϊκά Μαθήματα στο Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα» έχει χρηματοδοτήσει μόνο τη αναδιαμόρφωση του εκπαιδευτικού υλικού. Το έργο υλοποιείται στο πλαίσιο του Επιχειρησιακού Προγράμματος «Εκπαίδευση και Δια Βίου Μάθηση» και συγχρηματοδοτείται από την Ευρωπαϊκή Ένωση (Ευρωπαϊκό Κοινωνικό Ταμείο) και από εθνικούς πόρους. 3

4 Σκοποί Ενότητας Ο φοιτητής που θα παρακολουθήσει με επιτυχία την ενότητα αυτή θα διαθέτει τις απαιτούμενες θεωρητικές και πρακτικές γνώσεις ώστε: Να αναπτύσσει εφαρμογές διεπαφής για γραφικό παραθυρικό περιβάλλον (client-server) και για περιβάλλον WEB (n-tier). 4

5 Περιεχόμενα Ενότητας Κανονικοποιημένη Βάση Δεδομένων Τα βήματα της Κανονικοποίησης Ορισμός της Λειτουργικής Εξάρτησης Οι Νόμοι της Κανονικοποίησης Τεχνικές Κανονικοποίησης Παραδείγματα - Εφαρμογές 5

6 Κανονικοποίηση Εξελίσσεται σε τέσσερα στάδια με βάση τους κανόνες κανονικοποίησης: Πρώτος (1NF), Δεύτερος (2NF), Τρίτος (3NF) και Boyce-Codd (BCNF) κανόνες κανονικοποίησης. Βασίζεται στην συναρτησιακή εξάρτηση ανάμεσα στα χαρακτηριστικά των σχέσεων. Μια σχέση μπορεί να κανονικοποιηθεί, έτσι ώστε να αντιμετωπίζονται οι περιπτώσεις δημιουργίας προβλημάτων ενημέρωσης της Βάσης Δεδομένων. Καταλήγει στην κατασκευή ενός σχεσιακού μοντέλου (πίνακες- σχέσεις) από την αρχική περιγραφή των δεδομένων που αφορούν στη λειτουργία της περίπτωσης που μελετάμε Η διαδικασία ξεκινά από μια αρχική σχέση (μη κανονικοποιημένη) και με διαδοχικά βήματα (αποδόμησης) καταλήγει στην κανονικοποιημένη βάση δεδομένων. 6

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

8 Παράδειγμα Πλεονασμού Δεδομένων - Αποδόμηση 8 Πλεονασμός Με τη Διάσπαση σε δύο πίνακες δεν υπάρχει πλεονασμός StudentNoSFnameSfnameAddressDepartmentCode 1234ΓεωργίουΝικόλαος Ανθέων 20, ΠάτραΔΕ 3421ΝικολάουΓεώργιος Πόρου 101, ΑθηναΛΟ 6743ΠέτρουΠέτρος Κερκύρας 101, 12111, ΑθήναΔΕ 5411 Αθανασίο υΝάσος Κύπρου 201, 1002, ΣπάρτηΗΛ 9921ΙωάννουΧρήστος Κήπων 154, 12200, ΑιγαλεωΛΟ DepartmentCodeTitleBuilding ΔΕ Διοίκησης ΕπιχειρήσεωνΔ-1 ΛΟΛογιστικήςΔ-2 ΗΛΗλεκτρολογίαςΑ-2 StudentNoSFnameSfnameAddressDepartmentCodeTitleBuilding 1234ΓεωργίουΝικόλαοςΑνθέων 20, ΠάτραΔΕΔιοίκησης ΕπιχειρήσεωνΔ ΝικολάουΓεώργιοςΠόρου 101, ΑθηναΛΟΛογιστικήςΔ ΠέτρουΠέτροςΚερκύρας 101, 12111, ΑθήναΔΕΔιοίκησης ΕπιχειρήσεωνΔ ΑθανασίουΝάσοςΚύπρου 201, 1002, ΣπάρτηΗΛΗλεκτρολογίαςΑ ΙωάννουΧρήστοςΚήπων 154, 12200, ΑιγαλεωΛΟΛογιστικήςΔ-2

9 Δυσκολίες στην Ενημέρωση Αν στη Βάση Δεδομένων υπάρχει πλεονασμός δεδομένων τότε δυνητικά υποφέρει από προβλήματα στην ενημέρωση (εισαγωγή, μεταβολή, διαγραφή δεδομένων) Παράδειγμα: Αν ένα τμήμα αλλάξει Διεύθυνση (Κτήριο) τότε θα πρέπει να αλλάξουμε τη Διεύθυνση σε όλες τις γραμμές του Πίνακα που εμφανίζεται το Τμήμα 9 StudentNoSFnameSfnameAddressDepartmentCodeTitleBuilding 1234ΓεωργίουΝικόλαοςΑνθέων 20, ΠάτραΔΕΔιοίκησης ΕπιχειρήσεωνΔ ΝικολάουΓεώργιοςΠόρου 101, ΑθηναΛΟΛογιστικήςΔ ΠέτρουΠέτροςΚερκύρας 101, 12111, ΑθήναΔΕΔιοίκησης ΕπιχειρήσεωνΔ ΑθανασίουΝάσοςΚύπρου 201, 1002, ΣπάρτηΗΛΗλεκτρολογίαςΑ ΙωάννουΧρ'ηστοςΚήπων 154, 12200, ΑιγαλεωΛΟΛογιστικήςΔ-2 Το τμήμα ΔΕ μετακομίζει στο κτήριο Δ-3

10 Βασικές Ιδιότητες στην Αποδόμηση Δύο είναι οι βασικές ιδιότητες της αποδόμησης. – Μη Απώλειας: (Lossless-join property) Η δομή της Βάσης Δεδομένων θα πρέπει να είναι τέτοια ώστε να μπορούμε να βρούμε οποιαδήποτε εικόνα της αρχικής κατάστασης από τη διασύνδεση των επιμέρους σχέσεων στις οποίες έχουμε αποδομήσει την Αρχική Σχέση. – Διατήρηση Εξάρτησης (Dependency preservation property): Επιτρέπει να έχουμε τους περιορισμούς που ισχύουν στην αρχική κατάσταση της Σχέσης με την τοποθέτηση περιορισμών στις μικρότερες σχέσεις. 10

11 Λειτουργική Εξάρτηση Λειτουργική ή Συναρτησιακή Εξάρτηση – Περιγράφει τη σχέση ανάμεσα σε δυο χαρακτηριστικά μιας σχέσης. – Αν A και B είναι χαρακτηριστικά μιας σχέσης το B είναι λειτουργικά – συναρτησιακά εξαρτημένο από το A (σημειώνεται A  B), αν κάθε τιμή του Α είναι συσχετισμένη με ακριβώς μία τιμή του B. Παράδειγμα: 11 StudentNoSFnameSfnameAddressRegionMunicipality 1234ΓεωργίουΝικόλαοςΑνθέων 20ΑττικήςΑθηναίων 3421ΝικολάουΓεώργιοςΠόρου 101ΘεσσαλίαςΛάρισα 6743ΠέτρουΠέτροςΚερκύρας 101ΑττικήςΑιγάλεω 5411ΑθανασίουΝάσοςΚύπρου 201ΚρήτηςΧανιά 9921ΙωάννουΧρ'ηστοςΚήπων 154ΚρήτηςΗράκλειο Η περιφέρεια είναι εξαρτημένη από την Πόλη Municipality -  Region

12 Λειτουργική ή Συναρτησιακή Εξάρτηση Διαγραμματική Παρουσίαση. Ο προσδιοριστής (determinant) μιας λειτουργικής εξάρτησης είναι το ή τα χαρακτηριστικά τους αριστερού τμήματος της συναρτησιακής εξάρτησης. Ουσιαστικά, υπάρχει συναρτησιακή εξάρτηση όταν γνωρίζοντας την τιμή του Α μπορούμε να βρούμε την τιμή του Β. Αν γνωρίζουμε τον Νομό (πχ Γρεβενά) μπορούμε να βρούμε την Περιφέρεια (Δυτικής Μακεδονίας). Το αντίστροφο δεν ισχύει. 12 Το B είναι εξαρτημένο από το A ΑΒ

13 Παραδείγματα Συναρτησιακής Εξάρτησης 13 ΑΜΚΑ Θέση Η θέση είναι Συναρτησιακά Εξαρτημένη από τον κωδικό του προσωπικού  Αναπληρωτής Καθηγητής Θέση ΑΜΚΑ Ο κωδικός του Προσωπικου δεν είναι συναρτησιακά εηξαρτημπενος απο τη θέση Αναπληρωτής Καθηγητής  ……….

14 Η Διαδικασία της Κανονικοποίησης Τεχνικές για την αποδόμηση μιας σχέσης σε άλλες βασισμένες στο πρωτεύων κλειδί και τις λειτουργικές εξαρτήσεις ανάμεσα στα χαρακτηριστικά της σχέσης Υλοποιείται με μια σειρά από βήματα. Κάθε βήμα αντιστοιχεί και σε ένα κανόνα κανονικοποίησης. Όπως προχωρά η κανονικοποίηση, οι σχέσεις προοδευτικά γίνονται περισσότερο περιοριστικές στη μορφή και εξασφαλίζουν την ικανοποίηση των δύο βασικών ιδιοτήτων της κανονικοποίησης. 14

15 Τα Βήματα της Κανονικοποίησης 15 1ος Κανόνας Κανονικοποίησης (1NF) 2ος Κανόνας Κανονικοποίησης (2NF) 3ος Κανόνας Κανονικοποίησης (3NF) Ανώτεροι Κανόνες Κανονικοποίησης

16 Μη Κανονικοποιημένη προς Κανονικοποιημένη Σχέση κατά τον 1ο Κανόνα Μη κανονικοποιημένος πίνακας είναι εκείνος που έχει ένα ή περισσότερα επαναλαμβανόμενα στοιχεία Για να δημιουργήσουμε ένα μη κανονικοποιημένο πίνακα αρκεί να μεταφέρουμε μια φόρμα (καρτέλα) σε πίνακα 16

17 Η καρτέλα του Φοιτητή ΚΑΡΤΕΛΑ ΦΟΙΤΗΤΗ Α.Μ.: Ονοματεπώνυμο: Νικολάου Νικόλαος Όνομα Πατρός: Γεώργιος Διεύθυνση: Π. Ράλλη 432, Αιγάλεω Ημερομηνία Γέννησης: Δηλώσεις Μαθημάτων: 17 Κωδικός Μαθήματος Μάθημα Εξάμηνο Μαθήματος Εξάμηνο Δήλωσης Βαθμός Κωδικός Διδάσκοντος Ονοματεπώνυμο Διδασκοντος M6.1 Βάσεις Δεδομένων ΣτΕαρινό Παναγιώτης Παναγιώτου Μ4.2 Οργάνωση και Διοίκηση Δ Χειμερινό Πέτρος Γεωργίου

18 Η καρτέλα του Φοιτητή σε Μορφή Πίνακα Παραδοχές: Ο Φοιτητής δηλώνει το μάθημα μία μόνο φορά. ‘Ενα μάθημα το διδάσκει μόνο ένας καθηγητής 18 Κωδικός Φοιτητή Ονοματε πώνυμο Ονομα ΠατρόςΔιεύθυνση Ημερομηνία Γέννησης Κωδικός Μαθήματος ΜάθημαΕξάμηνο Μαθήματος Εξάμηνο Δήλωσης ΒαθμόςΚωδικός Διδάσκοντος Ονοματε πώνυμο ScodeSNameFnameAddressdob McodeTitleSemesterSsemesterGradePcodePname Νικολάου Νικόλαος Γεώργιος Π. Ράλλη 432, Αιγάλεω 10/5/1993M6.1 Βάσεις Δεδομένων ΣτΕαρινό Παναγιώτ ης Ππαναγι ώτου Μ4.2 Οργάνωση και Διοίκηση Δ Χειμερινό Πέτρος Γεωργίου 10022ΠέτρουΠέτρος Αθηνών 102, Αθήνα 29/9/1992Μ5.1 Προγραμματισμ ός ΗΥ ΕΕαρινό Παναγιώτ ης Απαναγι ώτου Μ4.2 Οργάνωση και Διοίκηση ΔΕαρινό Πέτρος Α

19 Πρώτος Κανόνας (1NF) Μια σχέση είναι κανονικοποιημένη κατά τον πρώτο κανόνα όταν σε ένα κελί έχει μια και μόνο μία τιμής. 19 Κωδικός Φοιτητή Ονοματε πώνυμο Ονομα ΠατρόςΔιεύθυνση Ημερομηνία Γέννησης Κωδικός Μαθήματος ΜάθημαΕξάμηνο Μαθήματος Εξάμηνο Δήλωσης ΒαθμόςΚωδικός Διδάσκοντος Ονοματε πώνυμο ScodeSNameFnameAddressdob McodeTitleSemesterSsemesterGradePcodePname Νικολάου Νικόλαος Γεώργιος Π. Ράλλη 432, Αιγάλεω 10/5/1993M6.1 Βάσεις Δεδομένων ΣτΕαρινό Παναγιώτ ης Ππαναγι ώτου Μ4.2 Οργάνωση και Διοίκηση Δ Χειμερινό Πέτρος Γεωργίου 10022ΠέτρουΠέτρος Αθηνών 102, Αθήνα 29/9/1992Μ5.1 Προγραμματισμ ός ΗΥ ΕΕαρινό Παναγιώτ ης Απαναγι ώτου Μ4.2 Οργάνωση και Διοίκηση ΔΕαρινό Πέτρος Α Μη κανονικοποιημενη σχέση κατά 1 ΝF

20 Από μη Κανονικοποιημένη Μορφή σε Κανονικοποιημένη κατά 1NF Προσδιορίστε ένα η περισσότερα χαρακτηριστικά τα οποία θα χρησιμοποιηθούν σαν κλειδί για τον μη κανονικοποιημένο πίνακα. Προσδιορίστε τα πεδία που επαναλαμβάνονται στον μη κανονικοποιημένο πίνακα Μετακινήστε τα επαναλαμβανόμενα πεδία με: 1η Μέθοδος - Εισαγωγή των κατάλληλων δεδομένων στα κενά κελιά επαναλαμβάνοντας τις τιμές ή με 2η Μέθοδος - Μετακίνηση των επαναλαμβανόμενων δεδομένων σε έναν νέο πίνακα μαζί με αντίγραφο του κλειδιού 20

21 Κανονικοποίηση κατά 1 ΝF (1η μέθοδος) 21 Κωδικός Φοιτητή Ονοματεπών υμο Ονομα Πατρός Διεύθυνση Ημερομηνία Γέννησης Κωδικός Μαθήματος Μάθημα Εξάμηνο Μαθήματος Εξάμηνο ΔήλωσηςΒαθμός Κωδικός Διδάσκοντος Ονοματεπών υμο ScodeSNameFnameAddressdobMcodeTitleSemesterSsemesterGradePcodePname Νικολάου ΝικόλαοςΓεώργιος Π. Ράλλη 432, Αιγάλεω10/5/1993 M6.1Βάσεις ΔεδομένωνΣτΕαρινό Παναγιώτης Απαναγιώτου Μ4.2Οργάνωση και Διοίκηση ΔΧειμερινό Πέτρος Γεωργίου 10022ΠέτρουΠέτρος Αθηνών 102, Αθήνα29/9/1992 Μ5.1Προγραμματισμός ΗΥΕΕαρινό Παναγιώτης Απαναγιώτου Μ4.2Οργάνωση και Διοίκηση ΔΕαρινό Πέτρος Γεωργίου Κωδικός Φοιτητή Ονοματεπώ νυμο Ονομα Πατρός Διεύθυνση Ημερομηνία Γέννησης Κωδικός Μαθήματος Μάθημα Εξάμηνο Μαθήματος Εξάμηνο ΔήλωσηςΒαθμός Κωδικός Διδάσκοντος Ονοματεπώ νυμο ScodeSNameFnameAddressdobMcodeTitleSemesterSsemesterGradePcodePname Νικολάου Νικόλαος Γεώργιος Π. Ράλλη 432, Αιγάλεω 10/5/1993M6.1Βάσεις ΔεδομένωνΣτΕαρινό Παναγιώτης Απαναγιώτο υ Νικολάου Νικόλαος Γεώργιος Π. Ράλλη 432, Αιγάλεω 10/5/1993Μ4.2 Οργάνωση και Διοίκηση ΔΧειμερινό Πέτρος Γεωργίου 10022ΠέτρουΠέτρος Αθηνών 102, Αθήνα 29/9/1992Μ5.1 Προγραμματισμός ΗΥ ΕΕαρινό Παναγιώτης Απαναγιώτο υ 10022ΠέτρουΠέτρος Αθηνών 102, Αθήνα 29/9/1992Μ4.2 Οργάνωση και Διοίκηση ΔΕαρινό Πέτρος Γεωργίου Εισαγωγή των κατάλληλων δεδομένων στα κενά κελιά επαναλαμβάνοντας τις τιμές Κλειδί- Κωδικός Φοιτητή, Κωδικός Μαθήματος

22 Κανονικοποίηση κατά 1 ΝF ( 2η μέθοδος) 22 Κωδικός Φοιτητή Κωδικός Μαθήματος ΜάθημαΕξάμηνο Μαθήματος Εξάμηνο Δήλωσης ΒαθμόςΚωδικός Διδάσκοντος Ονοματεπών υμο Scode McodeTitleSemesterSsemesterGradePcodePname M6.1Βάσεις Δεδομένων ΣτΕαρινό Παναγιώτης Απαναγιώτου Μ4.2Οργάνωση και Διοίκηση ΔΧειμερινό Πέτρος Γεωργίου Μ5.1Προγραμματι σμός ΗΥ ΕΕαρινό Παναγιώτης Απαναγιώτου Μ4.2Οργάνωση και Διοίκηση ΔΕαρινό Πέτρος Γεωργίου Κωδικός Φοιτητή Ονοματεπώνυ μο Ονομα ΠατρόςΔιεύθυνση Ημερομηνία Γέννησης ScodeSNameFnameAddressdob Νικολάου ΝικόλαοςΓεώργιος Π. Ράλλη 432, Αιγάλεω10/5/ ΠέτρουΠέτρος Αθηνών 102, Αθήνα29/9/1992 Μετακίνηση των επαναλαμβανόμενω ν δεδομένων σε έναν νέο πίνακα μαζί με αντίγραφο του κλειδιού που αφορά τα επαναλαμβανόμενα δεδομένα

23 Δεύτερος Κανόνας Κανονικοποίησης (2NF) Βασίζεται στην πλήρη συναρτησιακή εξάρτηση. Πλήρη λειτουργική εξάρτηση έχουμε όταν: – A και B είναι χαρακτηριστικά μιας σχέσης, – Το B είναι πλήρως εξαρτημένο από το Α αν το Β είναι εξαρτημένο από το Α αλλά όχι από κάθε υποσύνολο του Α. Σε αντίθετη περίπτωση έχουμε μερική συναρτησιακή εξάρτηση. Μια σχέση είναι κανονικοποιημένη κατά 2 NF αν είναι κανονικοποιημένη κατά 1NF και κάθε χαρακτηριστικό που δεν είναι πρωτεύον κλειδί είναι πλήρως εξαρτημένο στο πρωτεύον κλειδί. 23

24 Βήματα της Κανονικοποίησης (2NF) Προσδιορίστε το πρωτεύον κλειδί της 1NF σχέσης Προσδιορίστε τις λειτουργικές εξαρτήσεις στη σχέση Αν υπάρχουν μερικές λειτουργικές εξαρτήσεις τότε μετακινήστε τες σε νέους πίνακες μαζί με ένα αντίγραφο του προσδιοριστή τους. 24

25 Συναρτησιακές Εξαρτήσεις 25 Σ.Ε. ScodeSNameFnameAddressdobMcodeTitleSemesterSsemesterGradePcodePname Π.Κ. (PK) Μ. Σ.Ε. 1 Μ. Σ.Ε. 2 Σ.Ε. 3

26 Εφαρμογή της Τεχνικής για Κανονικοποίηση κατά 2NF 26 ScodeSNameFnameAddressdobMcodeTitleSemesterSsemesterGradePcodePname Π.Κ. (PK) Μ. Σ.Ε. 1 ScodeSNameFnameAddressdob ScodeMcodeTitleSemesterSsemesterGradePcodePname Μ. Σ.Ε. 2

27 Εφαρμογή της Τεχνικής για Κανονικοποίηση κατά 2NF (2) 27 ScodeSNameFnameAddressdobMcodeTitleSemesterSsemesterGradePcodePname Π.Κ. (PK) Μ. Σ.Ε. 1 ScodeSNameFnameAddressdob McodeTitleSemester Μ. Σ.Ε. 2 ScodeMcodeSsemesterGradePcodePname

28 Κανονικοποιημένη κατά 2 NF 28 ScodeSNameFnameAddressdob McodeTitleSemester ScodeMcodeSsemesterGradePcodePname Σ.Ε. 3

29 Κανονικοποιημένη κατά 2 NF (2) 29 Κωδικός Φοιτητή Ονοματεπών υμο Ονομα ΠατρόςΔιεύθυνση Ημερομηνία Γέννησης ScodeSNameFnameAddressdob Νικολάου ΝικόλαοςΓεώργιος Π. Ράλλη 432, Αιγάλεω10/5/ ΠέτρουΠέτρος Αθηνών 102, Αθήνα29/9/1992 Κωδικός Μαθήματος ΜάθημαΕξάμηνο Μαθήματος McodeTitleSemester M6.1Βάσεις ΔεδομένωνΣτ Μ4.2Οργάνωση και Διοίκηση Δ Μ5.1Προγραμματισμός ΗΥ Ε Κωδικός Φοιτητή Κωδικός Μαθήματος Εξάμηνο ΔήλωσηςΒαθμόςΚωδικός Διδάσκοντος Ονοματεπώνυμο ScodeMcodeSsemesterGradePcodePname M6.1Εαρινό Παναγιώτης Απαναγιώτου Μ4.2Χειμερινό Πέτρος Γεωργίου Μ5.1Εαρινό Παναγιώτης Απαναγιώτου Μ4.2Εαρινό Πέτρος Γεωργίου

30 Τρίτος κανόνας κανονικοποίησης (3NF) Βασίζεται στην Μεταβατική Συναρτησιακή Εξάρτηση. Μεταβατική Λειτουργική εξάρτηση έχουμε όταν: -A, B και C είναι χαρακτηριστικά μιας σχέσης τέτοια ώστε A B and B C και Α C. -Το C είναι μεταβατικά εξαρτώμενο στο Α μέσω του Β. Μια σχέση που είναι κανονικοποιημένη κατά 1NF και 2NF είναι κανονικοποιημένη κατά 3NF όταν δεν υπάρχει χαρακτηριστικό που: α) δεν είναι ή δεν μετέχει σε πρωτεύον κλειδί και β) είναι μεταβατικά συναρτησιακά εξαρτημένο στο πρωτεύον κλειδί. 30

31 Βήματα της Κανονικοποίησης κατά 3 NF Προσδιορίστε το πρωτεύον κλειδί στη κανονικοποιημένη κατά 2NF σχέση. Προσδιορίστε τις λειτουργικές εξαρτήσεις. Αν υπάρχει μεταβατική συναρτησιακή εξάρτηση εξάρτηση στο πρωτεύον κλειδί τότε μετακινήστε την σε έναν νέο πίνακα μαζί με ένα αντίγραφο του προσδιοριστή. 31 ScodeMcodeSsemesterGradePcodePname ΣΕ 3 Mcode  Pcode, Pcode  Pname Mcode  PName ScodeMcodeSsemesterGradePcode Pname

32 Τελική Μορφή 32 Κωδικός Φοιτητή Ονοματεπών υμο Ονομα Πατρός Διεύθυνση Ημερομηνία Γέννησης ScodeSNameFnameAddressdob Νικολάου ΝικόλαοςΓεώργιος Π. Ράλλη 432, Αιγάλεω10/5/ ΠέτρουΠέτρος Αθηνών 102, Αθήνα29/9/1992 Κωδικός Μαθήματος ΜάθημαΕξάμηνο Μαθήματος McodeTitleSemester M6.1Βάσεις Δεδομένων Στ Μ4.2Οργάνωση και Διοίκηση Δ Μ5.1Προγραμματισμό ς ΗΥ Ε Κωδικός Φοιτητή Κωδικός Μαθήματος Εξάμηνο Δήλωσης Βαθμός Κωδικός Διδάσκοντος ScodeMcodeSsemesterGradePcode M6.1Εαρινό Μ4.2Χειμερινό Μ5.1Εαρινό Μ4.2Εαρινό Κωδικός Διδάσκοντος Ονοματεπώνυμο PcodePname 10121Παναγιώτης Παναγιώτου 11001Πέτρος Γεωργίου

33 Κανόνας Boyce-Codd (BCNF) Βασίζεται στη λειτουργική εξάρτηση λαμβάνοντας υπόψη όλα τα υποψήφια κλειδιά σε μία σχέση. Σε μία σχέση με ένα υποψήφιο κλειδί συμπίπτει με τον τρίτο κανόνα. Μια σχέση είναι BCNF, αν και μόνο αν κάθε προσδιοριστής είναι ένα υποψήφιο κλειδί. Χρησιμοποιείται για τον έλεγχο της κανονικοποίησης σε Σχεσιακά Σχήματα Β.Δ. 33

34 Βήματα για την Κανονικοποίηση κατά BCNF Προσδιορίστε όλα τα υποψήφια κλειδιά στη σχέση. Προσδιορίστε όλες τις Συναρτησιακές εξαρτήσεις στη σχέση Αν υπάρχουν Συναρτησιακές εξαρτήσεις στη σχέση που οι προσδιοριστές τους δεν είναι υποψήφια κλειδιά, μετακινήστε τις εξαρτήσεις σε νέους πίνακες μαζί με ένα αντίγραφο του προσδιοριστή τους. 34

35 Άσκηση 1 (α) Δίδεται ο παρακάτω πίνακας της απασχόλησης του προσωπικού σε μια κατασκευαστική εταιρεία 35 AMKAΟνομ/μοΔιεύθυνσηΕιδικότητα Κωδ. Έργου Τίτλος Έργου Προϋπολογ ισμός Αντικείμενο ΕργασίαςΑπόΈως Κωδικός Τμήματος που εργάζεται Τίτλος Μονάδας AMKASnameAddressSpecialityProjectIDProjectTitleBudgetJobStartFnish BrankchN o BranchTitle Κώτσος Κ. Αθηνών 101 Ηλεκτρολόγος 101 Κτήριο Εταιρείας ABC Ηλεκτρολογικό Δίκτυο 2/3/ /3/2013Τ1 Τεχνική Μονάδα 102Νοσοκομείο Α Φωτισμοί Εξ. Χώρων 1/4/ /4/1013Τ1 Τεχνική Μονάδα 101 Κτήριο Εταιρείας ABC Τοποθέτηση ηλ. Συσκευών 2/3/ /3/2013Τ1 Τεχνική Μονάδα Σωτηρίου Π. Πάτρας 201 Πολιτικός Μηχανικός 102Νοσοκομείο Α Μελέτη 1/1/ /1/2013Τ3Μελετών 101 Κτήριο Εταιρείας ABC Μελέτη 1/9/ /1/1012Τ3Μελετών 105Νοσοκομείο Α Επίβλεψη 1/1/ /12/201 3 Τ3Μελετών

36 Άσκηση 1 (α) - Ζητούμενα a)Γιατί ο πίνακας δεν είναι κανονικοποιημένος κατά 1NF; b)Ποιές είναι οι δυσλειτουργίες που θα έχουμε αν αφήσουμε τη Σχεση σε αυτή τη μορφή; c)Ποιες από τις παρακάτω Εξαρτήσεις είναι πραγματικές; d)AMKA  Speciality, ProjectTitle  job, AMKA  BranchTitle e)AMKA  Address, Address  BranchTitle, ProjectTitle  Budget f)ProjectID  Job, AMKA  Job, Job  ProjectID g)Να φερετε στον πίνακα σε κανονικοποιημένη μορφή κατά Ι NF h)Ποιό είναι το πρωτεύον κλειδί που θα επιλέξετε; i)Ποιές είναι συναρτησιακές εξαρτήσεις στον πίνακα 1 (Ολικές, μερικές, μεταβατικές) j)Κανονικοποιήστε τον πίνακα κατά 2NF. 36

37 Άσκηση 2: Καρτέλα Δανειστικής Βιβλιοθήκης ΚΑΡΤΕΛΑ ΣΥΝΔΡΟΜΗΤΗ ΒΙΒΛΙΟΘΗΚΗΣ Α/Α.: Ονοματεπώνυμο: Νικολάου Νικόλαος Όνομα Πατρός: Γεώργιος Διεύθυνση: Π. Ράλλη 432, Αιγάλεω Τηλ: Ημερομηνία Γέννησης: Δανεισμός Βιβλίων: 37 Κωδικός Βιβλίου Τίτλος Είδος Αντικειμέν ου ΑντικείμενοΣυγγραφέας Ημερομηνία Δανεισμού Ημερομηνία Επιστροφής 1001Βάσεις ΔεδομένωνΠΛΠληροφορικήςΠέτρου Π20/3/201228/3/ Οργάνωση και Διοίκηση Επιχειρησεων ΟΑ Οργάνωσης και Διοίκησης Κωστής Κ.20/4/ Προγραμματισμός ΗΥ ΠΜΠληροφορικής Παναγιώτου Μ, 11/6/ Να εφαρμόσετε τις διαδικασίες που απορρέουν από τους κανόνες κανονικοποίησης για το σχεδιασμό της Βάσης Δεδομένων της Δανειστικής Βιβλιοθηκης

38 Άσκηση 3 Δίδεται η παραπάνω σχέση με τις συναρτησιακές εξαρτήσεις: – Προσδιορίστε τα πιθανά κλειδιά και καθορίστε το πρωτεύον κλειδί – Υποθέστε ότι η σχέση είναι σε 1NF (πρώτη κανονική μορφή), Περιγράψτε και επεξηγήστε τη διαδικασία της κανονικοποίησης των σχεσιακών σχημάτων στη δεύτερη (2NF) και τρίτη (3NF) κανονική μορφή. – Προσδιορίστε τα πρωτεύοντα και ξένα κλειδιά στην τελική μορφή (3ΝF). 38 ΑΒΓΔΕΖΗ

39 Τέλος Ενότητας


Κατέβασμα ppt "Βάσεις Δεδομένων Ενότητα 6: Κανονικοποίηση Αθανάσιος Σπυριδάκος Τμήμα Διοίκησης Επιχειρήσεων ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού."

Παρόμοιες παρουσιάσεις


Διαφημίσεις Google