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



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


Πληροφορική. Εργαστηριακή Ενότητα 3 η : Επεξεργασία Κελιών Γραμμών & Στηλών. Ι. Ψαρομήλιγκος Τμήμα Λογιστικής & Χρηματοοικονομικής

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


Τεχνοοικονομική Ανάλυση Οργάνωση και Διοίκησης Έργων και Επιχειρήσεων

Πληροφορική. Εργαστηριακή Ενότητα 1 η : Εισαγωγή στα Λογιστικά Φύλλα με το MS Excel. Ι. Ψαρομήλιγκος Τμήμα Λογιστικής & Χρηματοοικονομικής

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

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

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Πληροφορική. Εργαστηριακή Ενότητα 8 η : Γραφήματα

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

Λογιστικές Εφαρμογές Εργαστήριο

ΜΑΘΗΜΑΤΙΚΑ ΓΙΑ ΟΙΚΟΝΟΜΟΛΟΓΟΥΣ

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

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

ΣΤΑΤΙΣΤΙΚΗ ΕΠΙΧΕΙΡΗΣΕΩΝ

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

Τεχνολογίες & Εφαρμογές Πληροφορικής Ενότητα 1: Εισαγωγικό Μάθημα

Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών

Αρχεία και Βάσεις Δεδομένων

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ

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

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

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

ΓΡΑΜΜΙΚΟΣ & ΔΙΚΤΥΑΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

ΓΡΑΜΜΙΚΟΣ & ΔΙΚΤΥΑΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

ΣΥΣΤΗΜΑΤΑ ΗΛΕΚΤΡΙΚΗΣ ΕΝΕΡΓΕΙΑΣ ΙIΙ

ΣΥΣΤΗΜΑΤΑ ΗΛΕΚΤΡΙΚΗΣ ΕΝΕΡΓΕΙΑΣ ΙIΙ

ΣΥΣΤΗΜΑΤΑ ΗΛΕΚΤΡΙΚΗΣ ΕΝΕΡΓΕΙΑΣ ΙIΙ

ΒΟΗΘΗΤΙΚΕΣ ΣΗΜΕΙΩΣΕΙΣ

ΣΤΑΤΙΣΤΙΚΗ ΑΝΑΛΥΣΗ ΜΕ ΧΡΗΣΗ Η/Υ

ΜΑΘΗΜΑΤΙΚΑ ΓΙΑ ΟΙΚΟΝΟΜΟΛΟΓΟΥΣ

Ψηφιακή Τεχνολογία σε Ακαδημαϊκό Περιβάλλον

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

Διοίκηση ανθρωπίνων Πόρων. Ενότητα 2: Προγραμματισμός Ανθρώπινου Δυναμικού Δρ. Καταραχιά Ανδρονίκη Τμήμα Λογιστικής και Χρηματοοικονομικής

Μαθηματικά. Ενότητα 7: Μη Πεπερασμένα Όρια. Σαριαννίδης Νικόλαος Τμήμα Λογιστικής και Χρηματοοικονομικής

Σχεδίαση με Ηλεκτρονικούς Υπολογιστές

Μέθοδοι Βελτιστοποίησης

Ηλεκτρικές Μηχανές ΙΙ

Λογιστικές Εφαρμογές Εργαστήριο

Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών

Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Τεχνικό Σχέδιο

Πληροφορική. Εργαστηριακή Ενότητα 2 η : Το βιβλίο εργασίας του MS Excel. Ι. Ψαρομήλιγκος Τμήμα Λογιστικής & Χρηματοοικονομικής

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

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

ΣΤΑΤΙΣΤΙΚΗ ΕΠΙΧΕΙΡΗΣΕΩΝ

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Τεχνικό Σχέδιο

ΜΑΘΗΜΑ: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ

Υδραυλικά & Πνευματικά ΣΑΕ

Πληροφορική. Εργαστηριακή Ενότητα 5 η : Μαθηματικοί Τύποι. Ι. Ψαρομήλιγκος Τμήμα Λογιστικής & Χρηματοοικονομικής

Διοίκηση Ολικής Ποιότητας

ΓΡΑΜΜΙΚΗ ΑΛΓΕΒΡΑ. ΕΝΟΤΗΤΑ: Διανυσματικοί Χώροι (1) ΔΙΔΑΣΚΩΝ: Βλάμος Παναγιώτης ΙΟΝΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ

ΔΙΟΙΚΗΣΗ ΟΛΙΚΗΣ ΠΟΙΟΤΗΤΑΣ

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

ΔΙΟΙΚΗΣΗ ΟΛΙΚΗΣ ΠΟΙΟΤΗΤΑΣ

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

Εισαγωγή στους Αλγορίθμους Ενότητα 9η Άσκηση - Αλγόριθμος Prim

Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών

Πανεπιστήμιο Δυτικής Μακεδονίας. Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών. Ηλεκτρονική Υγεία

Σχεδίαση Δικτύων Υπολογιστών

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

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

ΣΤΑΤΙΣΤΙΚΗ ΕΠΙΧΕΙΡΗΣΕΩΝ

Ανάλυση Λογιστικών Καταστάσεων

Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου. Πληροφορική II. Ενότητα 8 : Βάσεις Δεδομένων (2/2) Δρ.

Αλληλεπίδραση Ανθρώπου- Υπολογιστή & Ευχρηστία

Αλληλεπίδραση Ανθρώπου- Υπολογιστή & Ευχρηστία

Εισαγωγή στους Αλγορίθμους

Αλληλεπίδραση Ανθρώπου- Υπολογιστή & Ευχρηστία

TEC610 Δυναμικές Εφαρμογές Διαδικτύου (ΣΤ εξάμηνο)

Μαθηματικά. Ενότητα 3: Εξισώσεις και Ανισώσεις 1 ου βαθμού. Σαριαννίδης Νικόλαος Τμήμα Λογιστικής και Χρηματοοικονομικής

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Λογική. Φροντιστήριο 4: Μορφολογική Παραγωγή. Δημήτρης Πλεξουσάκης Τμήμα Επιστήμης Υπολογιστών

Θεωρία Πιθανοτήτων & Στατιστική

Αυτοματοποιημένη χαρτογραφία

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

ΜΑΘΗΜΑΤΙΚΑ ΓΙΑ ΟΙΚΟΝΟΜΟΛΟΓΟΥΣ

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

Συστήματα Αυτομάτου Ελέγχου 1 Ενότητα # 5: Χρήση μετασχηματισμού Laplace για επίλυση ηλεκτρικών κυκλωμάτων Μέθοδοι εντάσεων βρόχων και τάσεων κόμβων

Μέθοδοι Βελτιστοποίησης

Σχεδίαση με Ηλεκτρονικούς Υπολογιστές

Θεωρία Πιθανοτήτων & Στατιστική

Επιχειρησιακή Έρευνα

Προγραμματισμός Η/Υ 1 (Εργαστήριο)

Ανάλυση Λογιστικών Καταστάσεων

Εισαγωγή στους Αλγορίθμους

Μαθηματικά. Ενότητα 6: Ασκήσεις Ορίων Συνάρτησης. Σαριαννίδης Νικόλαος Τμήμα Λογιστικής και Χρηματοοικονομικής

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

Τεχνολογίες & Εφαρμογές Πληροφορικής Ενότητα 6: Συμπίεση Windows

Ανάλυση Λογιστικών Καταστάσεων

Εφαρμογή Υπολογιστικών Τεχνικών στην Γεωργία

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

ΜΑΘΗΜΑ: Ηλεκτρονικά Ισχύος

Οργανωσιακή Συμπεριφορά Ενότητα 1: Η έννοια της οργάνωσης και διοίκησης

Συστήματα Υποστήριξης Αποφάσεων

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

Σχεδίαση με Ηλεκτρονικούς Υπολογιστές

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

Μέθοδοι Βελτιστοποίησης

Λογική. Δημήτρης Πλεξουσάκης. Ασκήσεις 2ου Φροντιστηρίου: Προτασιακός Λογισμός: Κανονικές Μορφές, Απλός Αλγόριθμος Μετατροπής σε CNF/DNF, Άρνηση

Transcript:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Η καρτέλα του Φοιτητή σε Μορφή Πίνακα Κωδικός Φοιτητή Ονοματε πώνυμο Ονομα Πατρός Διεύθυνση Ημερομηνία Γέννησης Κωδικός Μαθήματος Μάθημα Εξάμηνο Μαθήματος Εξάμηνο Δήλωσης Βαθμός Κωδικός Διδάσκοντος Ονοματε πώνυμο Scode SName Fname Address dob Mcode Title Semester Ssemester Grade Pcode Pname 10021 Νικολάου Π. Ράλλη 432, Γεώργιος Νικόλαος Αιγάλεω 10/5/1993 M6.1 Βάσεις Δεδομένων Στ Εαρινό 2012-13 7 10121 Παναγιώτ ης Ππαναγι ώτου Μ4.2 Οργάνωση και Διοίκηση Δ Χειμερινό 2011-12 5 11001 Πέτρος Γεωργίου 10022 Πέτρου Πέτρος Αθηνών 102, Αθήνα 29/9/1992 Μ5.1 Προγραμματισμ ός ΗΥ Ε Εαρινό 2012-13 6 10121 Παναγιώτ ης Απαναγι ώτου Μ4.2 Οργάνωση και Διοίκηση Δ Εαρινό 2011-12 7 11002 Πέτρος Α Παραδοχές: Ο Φοιτητής δηλώνει το μάθημα μία μόνο φορά. Ενα μάθημα το διδάσκει μόνο ένας καθηγητής 18

Πρώτος Κανόνας (1NF) Μια σχέση είναι κανονικοποιημένη κατά τον πρώτο κανόνα όταν σε ένα κελί έχει μια και μόνο μία τιμής. Κωδικός Μαθήματος Μάθημα Εξάμηνο Μαθήματος Εξάμηνο Δήλωσης Βαθμός Κωδικός Διδάσκοντος Ονοματε πώνυμο Κωδικός Ονοματε Φοιτητή πώνυμο Ονομα Πατρός Διεύθυνση Ημερομηνία Γέννησης Scode SName Fname Address dob Mcode Title Semester Ssemester Grade Pcode Pname 10021 Νικολάου Π. Ράλλη 432, Γεώργιος Νικόλαος Αιγάλεω 10/5/1993 M6.1 Βάσεις Δεδομένων Στ Εαρινό 2012-13 7 10121 Παναγιώτ ης Ππαναγι ώτου Μ4.2 Οργάνωση και Διοίκηση Δ Χειμερινό 2011-12 5 11001 Πέτρος Γεωργίου 10022 Πέτρου Πέτρος Αθηνών 102, Αθήνα 29/9/1992 Μ5.1 Προγραμματισμ ός ΗΥ Ε Εαρινό 2012-13 6 10121 Παναγιώτ ης Απαναγι ώτου Μ4.2 Οργάνωση και Διοίκηση Δ Εαρινό 2011-12 7 11002 Πέτρος Α Μη κανονικοποιημενη σχέση κατά 1 ΝF 19

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

Κανονικοποίηση κατά 1 ΝF (1η μέθοδος) Κωδικός Ονοματεπών Ονομα Ημερομηνία Κωδικός Εξάμηνο Κωδικός Ονοματεπών Διεύθυνση Μάθημα Εξάμηνο Δήλωσης Βαθμός Φοιτητή υμο Πατρός Γέννησης Μαθήματος Μαθήματος Διδάσκοντος υμο Scode SName Fname Address dob Mcode Title Semester Ssemester Grade Pcode Pname M6.1 Βάσεις Δεδομένων Στ Εαρινό 2012-13 710121 Παναγιώτης Νικολάου Π. Ράλλη 432, Απαναγιώτου 10021 Νικόλαος Γεώργιος Αιγάλεω 10/5/1993 Μ4.2 Οργάνωση και Διοίκηση Δ Χειμερινό 2011-12 511001 Πέτρος Γεωργίου Μ5.1 Προγραμματισμός ΗΥ Ε Εαρινό 2012-13 6 10121 Παναγιώτης Αθηνών 102, Απαναγιώτου 10022 Πέτρου Πέτρος Αθήνα 29/9/1992 Κλειδί- Κωδικός Φοιτητή, Κωδικός Μαθήματος Μ4.2 Οργάνωση και Διοίκηση Δ Εαρινό 2011-12 711001 Πέτρος Γεωργίου Εισαγωγή των κατάλληλων δεδομένων στα κενά κελιά επαναλαμβάνοντας τις τιμές Κωδικός Ονοματεπώ Ονομα Ημερομηνία Κωδικός Εξάμηνο Κωδικός Ονοματεπώ Διεύθυνση Μάθημα Εξάμηνο Δήλωσης Βαθμός Φοιτητή νυμο Πατρός Γέννησης Μαθήματος Μαθήματος Διδάσκοντος νυμο Scode SName Fname Address dob Mcode Title Semester Ssemester Grade Pcode Pname 10021 Νικολάου Νικόλαος Γεώργιος Π. Ράλλη 432, Αιγάλεω 10/5/1993 M6.1 Βάσεις Δεδομένων Στ Εαρινό 2012-13 7 10121 Παναγιώτης Απαναγιώτο υ 10021 Νικολάου Νικόλαος Γεώργιος Π. Ράλλη 432, Αιγάλεω 10/5/1993 Μ4.2 Οργάνωση και Διοίκηση Δ Χειμερινό 2011-12 5 11001 Πέτρος Γεωργίου 10022 Πέτρου Πέτρος Αθηνών 102, Αθήνα 29/9/1992 Μ5.1 Προγραμματισμός ΗΥ Ε Εαρινό 2012-13 6 10121 Παναγιώτης Απαναγιώτο υ 10022 Πέτρου Πέτρος Αθηνών 102, Αθήνα 29/9/1992 Μ4.2 Οργάνωση και Διοίκηση Δ Εαρινό 2011-12 7 11001 Πέτρος Γεωργίου 21

Κανονικοποίηση κατά 1 ΝF ( 2η μέθοδος) Μετακίνηση των επαναλαμβανόμενω ν δεδομένων σε έναν νέο πίνακα μαζί με αντίγραφο του κλειδιού που αφορά τα επαναλαμβανόμενα δεδομένα Κωδικός Κωδικός Μάθημα Εξάμηνο Εξάμηνο Βαθμός Κωδικός Ονοματεπών Φοιτητή Μαθήματος Μαθήματος Δήλωσης Διδάσκοντος υμο Scode Mcode Title Semester Ssemester Grade Pcode Pname 10021 10021 10022 10022 Κωδικός Φοιτητή M6.1 Βάσεις Δεδομένων Μ4.2 Οργάνωση και Διοίκηση Μ5.1 Προγραμματι σμός ΗΥ Μ4.2 Οργάνωση και Διοίκηση Ονοματεπώνυ μο Ονομα Πατρός Στ Εαρινό 2012-13 Δ Χειμερινό 2011-12 Ε Εαρινό 2012-13 Δ Εαρινό 2011-12 Διεύθυνση Ημερομηνία Γέννησης Scode SName Fname Address dob 10021 Νικολάου Νικόλαος Γεώργιος 10022 Πέτρου Πέτρος Π. Ράλλη 432, Αιγάλεω 10/5/1993 Αθηνών 102, Αθήνα 29/9/1992 7 10121 Παναγιώτης Απαναγιώτου 5 11001 Πέτρος Γεωργίου 6 10121 Παναγιώτης Απαναγιώτου 7 11001 Πέτρος Γεωργίου 22

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

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

Συναρτησιακές Εξαρτήσεις Π.Κ. (PK) Scode SName Fname Address dob Mcode Title Semester Ssemester Grade Pcode Pname Σ.Ε. Μ. Σ.Ε. 1 Μ. Σ.Ε. 2 Σ.Ε. 3 25

Εφαρμογή της Τεχνικής για Κανονικοποίηση κατά 2NF Π.Κ. (PK) Scode SName Fname Address dob Mcode Title Semester Ssemester Grade Pcode Pname Μ. Σ.Ε. 1 Μ. Σ.Ε. 2 Scode SName Fname Address dob Scode Mcode Title Semester Ssemester Grade Pcode Pname 26

Εφαρμογή της Τεχνικής για Κανονικοποίηση κατά 2NF (2) Π.Κ. (PK) Scode SName Fname Address dob Mcode Title Semester Ssemester Grade Pcode Pname Μ. Σ.Ε. 1 Μ. Σ.Ε. 2 Scode SName Fname Address dob Mcode Title Semester Scode Mcode Ssemester Grade Pcode Pname 27

Κανονικοποιημένη κατά 2 NF Scode SName Fname Address dob Mcode Title Semester Scode Mcode Ssemester Grade Pcode Pname Σ.Ε. 3 28

Κανονικοποιημένη κατά 2 NF (2) Κωδικός Φοιτητή Ονοματεπών υμο Ονομα Πατρός Διεύθυνση Ημερομηνία Γέννησης Scode SName Fname Address dob 10021 Νικολάου Νικόλαος Γεώργιος 10022 Πέτρου Πέτρος Π. Ράλλη 432, Αιγάλεω 10/5/1993 Αθηνών 102, Αθήνα 29/9/1992 Κωδικός Μαθήματος Μάθημα Εξάμηνο Μαθήματος Mcode Title Semester M6.1 Βάσεις Δεδομένων Στ Μ4.2 Οργάνωση και Διοίκηση Μ5.1 Προγραμματισμός ΗΥ Δ Ε Κωδικός Εξάμηνο Δήλωσης Βαθμός Κωδικός Ονοματεπώνυμο Κωδικός Φοιτητή Μαθήματος Διδάσκοντος Scode Mcode Ssemester Grade Pcode Pname 10021 M6.1 Εαρινό 2012-13 7 10121 Παναγιώτης Απαναγιώτου Μ4.2 Χειμερινό 2011-5 11001 Πέτρος Γεωργίου 10021 12 10022 Μ5.1 Εαρινό 2012-13 6 10121 Παναγιώτης Απαναγιώτου 10022 Μ4.2 Εαρινό 2011-12 7 11001 Πέτρος Γεωργίου 29

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

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

Τελική Μορφή Κωδικός Μαθήματος Μάθημα Εξάμηνο Μαθήματος Mcode Title Semester M6.1 Βάσεις Στ Δεδομένων Μ4.2 Οργάνωση και Δ Διοίκηση Μ5.1 Προγραμματισμό ς ΗΥ Ε Κωδικός Φοιτητή Ονοματεπών υμο Ονομα Πατρός Διεύθυνση Ημερομηνία Γέννησης Scode SName Fname Address dob 10021 Νικολάου Νικόλαος Γεώργιος 10022 Πέτρου Πέτρος Π. Ράλλη 432, Αιγάλεω 10/5/1993 Αθηνών 102, Αθήνα 29/9/1992 Κωδικός Φοιτητή Κωδικός Εξάμηνο Κωδικός Βαθμός Μαθήματος Δήλωσης Διδάσκοντος Scode Mcode Ssemester Grade Pcode M6.1 Εαρινό 2012-13 7 10121 10021 Μ4.2 Χειμερινό 2011-5 11001 10021 12 Μ5.1 Εαρινό 2012-13 6 10121 10022 Μ4.2 Εαρινό 2011-12 7 11001 10022 Κωδικός Διδάσκοντος Pcode Ονοματεπώνυμο Pname 10121 Παναγιώτης Παναγιώτου 11001 Πέτρος Γεωργίου 32

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

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

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

Άσκηση 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

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

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

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