Skip to main content

Πολυεπίπεδη εξάρτηση σε βάσεις δεδομένων

(30 languages) David Icke Dot Connector EP 4 (Ιούνιος 2026)

(30 languages) David Icke Dot Connector EP 4 (Ιούνιος 2026)
Anonim

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

Μια πολυεξαρτημένη εξάρτηση εμποδίζει την κανονικοποίηση τυποποιημένη τέταρτη κανονική μορφή (4NF). Οι σχεσιακές βάσεις δεδομένων ακολουθούν πέντε κανονικές μορφές που αντιπροσωπεύουν κατευθυντήριες γραμμές για το σχεδιασμό ρεκόρ. Αποτρέπουν τις ανωμαλίες ενημέρωσης και ασυνέπειες στα δεδομένα. Το τέταρτο κανονικό έντυπο ασχολείται με σχέσεις πολλών προς ένα σε μια βάση δεδομένων.

Λειτουργική εξάρτηση έναντι πολλαπλής εξάρτησης

Για να κατανοήσουμε μια πολυεξαρτώμενη εξάρτηση, είναι χρήσιμο να επανεξετάσουμε τη λειτουργική εξάρτηση.

Αν ένα χαρακτηριστικό X καθορίζει με μοναδικό τρόπο ένα χαρακτηριστικό Y, τότε το Y εξαρτάται λειτουργικά από το Χ. Αυτό γράφεται ως X -> Y. Για παράδειγμα, στον πίνακα μαθητών παρακάτω, ο Student_Name καθορίζει το Major:

Φοιτητές
Ονομα μαθητήΜείζων
ΡάβιΙστορίας της τέχνης
BethΧημεία

Αυτή η λειτουργική εξάρτηση μπορεί να γραφτεί: Student_Name -> Major . Κάθε Student_Name καθορίζει ακριβώς έναν Major και όχι περισσότερα.

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

Φοιτητές
Ονομα μαθητήΜείζωνΑθλημα
ΡάβιΙστορίας της τέχνηςΠοδόσφαιρο
ΡάβιΙστορίας της τέχνηςΒόλεϊ
ΡάβιΙστορίας της τέχνηςΤένις
BethΧημείαΤένις
BethΧημείαΠοδόσφαιρο

Το πρόβλημα εδώ είναι ότι τόσο ο Ravi όσο και ο Beth παίζουν πολλαπλά αθλήματα. Είναι απαραίτητο να προσθέσετε μια νέα σειρά για κάθε επιπλέον άθλημα.

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

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

Μια εξάρτηση πολλαπλών τιμών γράφεται X -> -> Y. Σε αυτή την περίπτωση:

Ονομα μαθητή ->-> ΜείζωνΟνομα μαθητή->-> Αθλημα

Αυτό διαβάζεται ως "Student_Name multidetermines Major" και "Student_Name πολλαπλών προσδιορίζει τον αθλητισμό".

Μια πολυεπίπεδη εξάρτηση απαιτεί πάντοτε τουλάχιστον τρία χαρακτηριστικά επειδή αποτελείται από τουλάχιστον δύο χαρακτηριστικά που εξαρτώνται από ένα τρίτο.

Πολλαπλή εξάρτηση και κανονικοποίηση

Ένας πίνακας με εξάρτηση πολλαπλών τιμών παραβιάζει το πρότυπο κανονικοποίησης της Τέταρτης Κανονικής Μορφής (4NK) επειδή δημιουργεί περιττές απολύσεις και μπορεί να συμβάλει σε ασυνεπή δεδομένα. Για να φτάσετε μέχρι το 4NF, είναι απαραίτητο να σπάσετε αυτές τις πληροφορίες σε δύο πίνακες.

Ο κατωτέρω πίνακας έχει τώρα μια λειτουργική εξάρτηση του Student_Name -> Major, και όχι εξαρτήσεις πολλαπλών τιμών:

Φοιτητές & Κυρίες
Ονομα μαθητήΜείζων
ΡάβιΙστορίας της τέχνης
ΡάβιΙστορίας της τέχνης
ΡάβιΙστορίας της τέχνης
BethΧημεία
BethΧημεία

Ενώ αυτός ο πίνακας έχει επίσης μια μόνο λειτουργική εξάρτηση του Student_Name -> Sport:

Φοιτητές & Αθλητισμός
Ονομα μαθητήΑθλημα
ΡάβιΠοδόσφαιρο
ΡάβιΒόλεϊ
ΡάβιΤένις
BethΤένις
BethΠοδόσφαιρο

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