Διαφορά μεταξύ BCNF και 3NF Διαφορά μεταξύ

Anonim

BCNF έναντι 3NF

Boyce Codd κανονική μορφή (γνωστή και ως BCNF) είναι μια φυσιολογική μορφή - που είναι μια μορφή που παρέχει κριτήρια για τον προσδιορισμό του βαθμού ευπάθειας ενός πίνακα σε λογικές ασυνέπειες και ανωμαλίες. Αυτή η κανονική μορφή χρησιμοποιείται στην κανονικοποίηση της βάσης δεδομένων. Είναι λίγο ισχυρότερη από τον προκάτοχό του, την τρίτη κανονική μορφή (επίσης γνωστή ως 3NF). Ένας πίνακας θεωρείται ότι βρίσκεται στο BCNF αν και μόνο αν για κάθε ένα, εάν οι μη τετριμμένες λειτουργικές εξαρτήσεις του - που είναι ένα όριο που ορίζεται μεταξύ δύο συνόλων χαρακτηριστικών σε μια σχέση που λαμβάνεται από μια βάση δεδομένων - είναι ένα σούπερ κλειδί (ένα σύνολο ιδιότητες μιας σχεσιακής μεταβλητής που δηλώνει ότι σε όλες τις σχέσεις που αντιστοιχούν σε αυτή τη συγκεκριμένη μεταβλητή δεν υπάρχουν δύο διακριτές σειρές που να περιέχουν την ίδια τιμή για τα χαρακτηριστικά σε αυτό το συγκεκριμένο σύνολο). Η BCNF δηλώνει ότι οποιοσδήποτε πίνακας που δεν πληροί τα κριτήρια που πρέπει να αποδοθούν ως BNCF είναι ευάλωτος στις λογικές ασυνέπειες.

Το 3NF είναι μια κανονική μορφή που χρησιμοποιείται επίσης στην κανονικοποίηση της βάσης δεδομένων. Θεωρείται ότι ένας πίνακας βρίσκεται σε 3NF εάν και μόνο αν 1) ο πίνακας είναι σε δεύτερη κανονική μορφή (ή 2NF, ο οποίος είναι ένας πρώτος κανονικός κώδικας ή 1NF που έχει ικανοποιήσει τα κριτήρια για να γίνει 2NF) και 2) κάθε μη ιδιόκτητο χαρακτηριστικό του πίνακα είναι μη μεταβατικά εξαρτώμενο από κάθε πλήκτρο του πίνακα (δηλαδή δεν εξαρτάται άμεσα από κάθε πλήκτρο). Υπάρχει μια άλλη θέση του 3NF που χρησιμοποιείται επίσης για τον ορισμό των διαφορών μεταξύ του 3NF και του BCNF.

Αυτό το θεώρημα σχεδιάστηκε από τον Carlo Zaniolo το 1982. Δηλώνει ότι ένας πίνακας βρίσκεται σε 3NF αν και μόνο αν για κάθε λειτουργική εξάρτηση όπου X ∈ A πρέπει να υπάρχει τουλάχιστον μία από τις τρεις συνθήκες: ή X είναι ένα σούπερ κλειδί, ή Α είναι ένα πρωτεύον χαρακτηριστικό (που σημαίνει ότι το Α περιέχεται μέσα σε ένα υποψήφιο κλειδί - ή ένα ελάχιστο σούπερ κλειδί για αυτή τη σχέση). Αυτός ο νεότερος ορισμός διαφέρει από το θεώρημα ενός BCNF στο ότι το τελευταίο μοντέλο απλώς θα εξαλείψει την τελευταία συνθήκη. Ακόμη κι αν λειτουργεί ως νεώτερη έκδοση του θεώρημα 3NF, υπάρχει μια παράγωγος του θεώρημα Zaniolo. Δηλώνει ότι το X ¨ 'A δεν είναι ασήμαντο. Αν αυτό είναι αληθές, ας είναι ένα χαρακτηριστικό μεσημεριανό-κλειδί και επίσης ας είναι το κλειδί του R. Εάν αυτό κρατά τότε Y ¼ X. Αυτό σημαίνει ότι το Α δεν είναι μεταβατικά εξαρτώμενο από το Y αν και μόνο αν X † «Το YN (ή το X είναι ένα σούπερ κλειδί)

Περίληψη:

1. Το BCNF είναι μια κανονική μορφή στην οποία για κάθε μία από τις μη τριβικές λειτουργικές εξαρτήσεις ενός πίνακα, είναι ένα σούπερ κλειδί · το 3NF είναι κανονική μορφή στην οποία ο πίνακας βρίσκεται σε 2NF και κάθε χαρακτηριστικό που δεν είναι πρωτεύον δεν εξαρτάται από τη μετάβαση από κάθε πλήκτρο του πίνακα