Τι είναι η μεταβατική εξάρτηση σε μια βάση δεδομένων

Αποφύγετε τις μεταβατικές εξαρτήσεις για να βοηθήσετε να εξασφαλίσετε την κανονικοποίηση

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

Από τη φύση της, μια μεταβατική εξάρτηση απαιτεί τρία ή περισσότερα χαρακτηριστικά (ή στήλες βάσης δεδομένων) που έχουν μια λειτουργική εξάρτηση μεταξύ τους, πράγμα που σημαίνει ότι η στήλη Α σε έναν πίνακα βασίζεται στη στήλη Β μέσω μιας ενδιάμεσης στήλης C.

Ας δούμε πώς μπορεί να λειτουργήσει αυτό.

Παράδειγμα μεταβατικής εξάρτησης

ΣΥΓΓΡΑΦΕΙΣ

Αναγνωριστικό_αντικειμένου Συγγραφέας Βιβλίο Author_Nationality
Auth_001 Orson Scott Card Το παιχνίδι του Ender Ηνωμένες Πολιτείες
Auth_001 Orson Scott Card Το παιχνίδι του Ender Ηνωμένες Πολιτείες
Auth_002 Margaret Atwood Η ιστορία της γυναίκας Καναδάς

Στο παραπάνω παράδειγμα AUTHORS:

Αλλά αυτός ο πίνακας εισάγει μια μεταβατική εξάρτηση:

Αποφυγή μεταβατικών εξαρτήσεων

Για να διασφαλίσουμε την Τρίτη Κανονική Μορφή, ας αφαιρέσουμε την μεταβατική εξάρτηση.

Μπορούμε να ξεκινήσουμε αφαιρώντας τη στήλη Βιβλίο από τον πίνακα "Συγγραφείς" και δημιουργώντας έναν ξεχωριστό πίνακα βιβλίων:

ΒΙΒΛΙΑ

Αναγνωριστικό βιβλίου Βιβλίο Αναγνωριστικό_αντικειμένου
Book_001 Το παιχνίδι του Ender Auth_001
Book_001 Τα παιδιά του νου Auth_001
Book_002 Η ιστορία της γυναίκας Auth_002

ΣΥΓΓΡΑΦΕΙΣ

Αναγνωριστικό_αντικειμένου Συγγραφέας Author_Nationality
Auth_001 Orson Scott Card Ηνωμένες Πολιτείες
Auth_002 Margaret Atwood Καναδάς

Αυτό το έκανα; Ας εξετάσουμε τώρα τις εξαρτήσεις μας:

ΒΙΒΛΙΟ πίνακα :

Πίνακας AUTHORS :

Πρέπει να προσθέσουμε έναν τρίτο πίνακα για να κανονικοποιήσουμε αυτά τα δεδομένα:

ΧΩΡΕΣ

Αναγνωριστικό χώρας Χώρα
Coun_001 Ηνωμένες Πολιτείες
Coun_002 Καναδάς

ΣΥΓΓΡΑΦΕΙΣ

Αναγνωριστικό_αντικειμένου Συγγραφέας Αναγνωριστικό χώρας
Auth_001 Orson Scott Card Coun_001
Auth_002 Margaret Atwood Coun_002

Τώρα έχουμε τρία τραπέζια, χρησιμοποιώντας εξωτερικά κλειδιά για να συνδέσετε μεταξύ των τραπεζιών:

Γιατί οι μεταβατικές εξαρτήσεις είναι κακό σχεδιασμό βάσης δεδομένων

Ποια είναι η αξία της αποφυγής των μεταβατικών εξαρτήσεων για να βοηθηθεί η εξασφάλιση του 3NF; Ας εξετάσουμε πάλι το πρώτο μας τραπέζι και δούμε τα θέματα που δημιουργεί:

ΣΥΓΓΡΑΦΕΙΣ

Αναγνωριστικό_αντικειμένου Συγγραφέας Βιβλίο Author_Nationality
Auth_001 Orson Scott Card Το παιχνίδι του Ender Ηνωμένες Πολιτείες
Auth_001 Orson Scott Card Τα παιδιά του νου Ηνωμένες Πολιτείες
Auth_002 Margaret Atwood Η ιστορία της γυναίκας Καναδάς

Αυτό το είδος σχεδιασμού μπορεί να συμβάλει σε ανωμαλίες δεδομένων και ασυνέπειες, για παράδειγμα:

Αυτοί είναι μόνο μερικοί λόγοι για τους οποίους η εξομάλυνση και η αποφυγή των μεταβατικών εξαρτήσεων, προστατεύουν τα δεδομένα και εξασφαλίζουν συνοχή.