BCNF έναντι 4NF (4η κανονικοποίηση)
Η κανονικοποίηση βάσεων δεδομένων είναι μια τεχνική που ασχολείται με συστήματα διαχείρισης σχεσιακών βάσεων δεδομένων. Τα σφάλματα δεδομένων μπορούν να αποφευχθούν σε μια καλά κανονικοποιημένη βάση δεδομένων. Η κανονικοποίηση χρησιμοποιείται για τη μείωση του πλεονασμού δεδομένων της βάσης δεδομένων. Αυτό σημαίνει υλοποίηση πινάκων βάσεων δεδομένων και των σχέσεών τους, εξαλείφοντας τον πλεονασμό και την ασυνεπή εξάρτηση. Υπάρχουν ορισμένοι προκαθορισμένοι κανόνες για την κανονικοποίηση. Αυτοί οι κανόνες ονομάζονται κανονικές μορφές.
- Πρώτη κανονική φόρμα (1NF)
- Δεύτερη κανονική φόρμα (2NF)
- Τρίτη κανονική φόρμα (3NF)
- Κανονική φόρμα Boyce-Codd (BCNF ή 3,5NF)
- Τέταρτη κανονική φόρμα (4NF)
Η πρώτη κανονική μορφή αναφέρεται ως η ατομικότητα ενός πίνακα. Η ατομικότητα του πίνακα μπορεί να επιτευχθεί με δύο βήματα.
- Κατάργηση διπλότυπων στηλών από τον ίδιο πίνακα.
- Δημιουργία χωριστών πινάκων για σχετικές διπλότυπες στήλες. (πρέπει να υπάρχουν κύρια κλειδιά για τον προσδιορισμό κάθε σειράς αυτών των πινάκων)
Στη Δεύτερη κανονική μορφή, η προσπάθεια είναι να μειωθούν τα περιττά δεδομένα σε έναν πίνακα εξάγοντάς τα και τοποθετώντας τα σε ξεχωριστό πίνακα. Αυτό μπορεί να επιτευχθεί κάνοντας τα παρακάτω βήματα.
- Επιλέξτε το σύνολο δεδομένων, το οποίο ισχύει για πολλές σειρές, και τοποθετήστε τις σε ξεχωριστούς πίνακες.
- Δημιουργήστε τις σχέσεις μεταξύ αυτών των νέων πινάκων και των γονικών πινάκων χρησιμοποιώντας ξένα κλειδιά.
Για να μεταφερθεί η βάση δεδομένων στην Τρίτη κανονική φόρμα, η βάση δεδομένων πρέπει ήδη να επιτευχθεί στην πρώτη και στη δεύτερη κανονική φόρμα. Όταν η βάση δεδομένων είναι σε 1NF και 2NF, δεν υπάρχουν διπλότυπες στήλες και δεν υπάρχουν υποσύνολα δεδομένων που να ισχύουν για πολλές σειρές. Η τρίτη κανονική μορφή μπορεί να επιτευχθεί αφαιρώντας τις στήλες των πινάκων, οι οποίες δεν είναι πλήρως, εξαρτώνται από το πρωτεύον κλειδί.
Κανονική φόρμα Boyce-Codd (BCNF ή 3,5NF)
Το BCNF σημαίνει "Κανονική Μορφή Boyce-Codd". Αυτή η κανονική μορφή γνωστή και ως 3.5 Κανονική μορφή κανονικοποίησης της βάσης δεδομένων. Για να επιτευχθεί BCNF, η βάση δεδομένων πρέπει να έχει ήδη φτάσει στην τρίτη κανονική μορφή. Στη συνέχεια, πρέπει να γίνουν τα ακόλουθα βήματα για να επιτευχθεί το BCNF.
- Προσδιορίστε όλα τα υποψήφια κλειδιά στις σχέσεις
- Προσδιορίστε όλες τις λειτουργικές εξαρτήσεις στις σχέσεις.
- Εάν υπάρχουν συναρτησιακές εξαρτήσεις στη σχέση, όπου οι ορίζοντές τους δεν είναι υποψήφια κλειδιά για τη σχέση, αφαιρέστε τις συναρτησιακές εξαρτήσεις τοποθετώντας τις σε μια νέα σχέση μαζί με ένα αντίγραφο της ορίζοντάς τους.
Τέταρτη κανονική φόρμα
Η βάση δεδομένων πρέπει να είναι στην τρίτη κανονική μορφή, πριν την κανονικοποιήσετε στην τέταρτη κανονική μορφή. Εάν η βάση δεδομένων βρίσκεται ήδη στην τρίτη κανονική μορφή, το επόμενο βήμα θα πρέπει να είναι η κατάργηση των εξαρτήσεων πολλαπλών τιμών. (Αν μία ή περισσότερες σειρές υποδηλώνουν την παρουσία μιας ή περισσότερων άλλων σειρών στον ίδιο πίνακα, ονομάζεται εξάρτηση πολλαπλών τιμών.)
Ποια είναι η διαφορά μεταξύ BCNF και 4NF (Τέταρτη κανονική μορφή);
• Η βάση δεδομένων πρέπει να έχει ήδη φτάσει στο 3NF για να μεταφερθεί στο BCNF, αλλά η βάση δεδομένων πρέπει να είναι σε 3NF και BCNF, για να φτάσει το 4NF.
• Στην τέταρτη κανονική μορφή, δεν υπάρχουν εξαρτήσεις πολλών τιμών των πινάκων, αλλά στο BCNF, μπορεί να υπάρχουν δεδομένα εξάρτησης πολλών τιμών στους πίνακες.