Διαφορά μεταξύ πρωτογενούς κλειδιού και υποψήφιου κλειδιού | Πρωτεύον κλειδί εναντίον υποψήφιου κλειδιού

Anonim

Πρωτεύον κλειδί έναντι υποψήφιου κλειδιού

Παρόλο που το κύριο κλειδί επιλέγεται από τα υποψήφια κλειδιά, υπάρχει κάποια διαφορά μεταξύ του πρωτεύοντος κλειδιού και των άλλων υποψηφίων κλειδιών, τα οποία θα συζητηθούν λεπτομερώς σε αυτό το άρθρο. Ο σχεδιασμός βάσης δεδομένων είναι μια από τις πιο σημαντικές δραστηριότητες που πρέπει να γίνουν κατά τη συντήρηση και την αποθήκευση δεδομένων. Κατά τη διάρκεια αυτής της διαδικασίας σχεδιασμού, πρέπει να δημιουργηθούν διαφορετικοί πίνακες με πολλές σχέσεις. Για να αποκτήσετε πρόσβαση σε αυτούς τους πίνακες σε μια βάση δεδομένων, χρησιμοποιούνται διαφορετικοί τύποι κλειδιών στις σύγχρονες γλώσσες σχεδιασμού βάσης δεδομένων, όπως MYSQL, MSAccess, SQLite κ.λπ. Από αυτά τα κλειδιά, τα υποψήφια κλειδιά και τα πρωτεύοντα κλειδιά έχουν καταστεί ουσιώδη για τις πρακτικές σχεδίασης βάσεων δεδομένων.

Τι είναι ένα υποψήφιο κλειδί;

Το κλειδί υποψηφίου είναι μία στήλη ή σύνολο στηλών σε έναν πίνακα μιας βάσης δεδομένων που μπορεί να χρησιμοποιηθεί για

αναγνώριση με μοναδικό τρόπο οποιασδήποτε εγγραφής βάσης δεδομένων χωρίς αναφορά σε άλλα δεδομένα . Κάθε πίνακας μιας βάσης δεδομένων μπορεί να έχει ένα ή περισσότερα από ένα υποψήφια κλειδιά. Ένα σύνολο υποψήφιων κλειδιών μπορεί να δημιουργηθεί χρησιμοποιώντας λειτουργικές εξαρτήσεις. Υπάρχουν ορισμένα σημαντικά χαρακτηριστικά σε ένα υποψήφιο κλειδί. Αυτοί είναι;

• τα υποψήφια κλειδιά πρέπει να είναι μοναδικά στο πεδίο και δεν πρέπει να περιέχουν τιμές NULL.

• το υποψήφιο κλειδί δεν πρέπει ποτέ να αλλάξει και πρέπει να διατηρεί την ίδια τιμή για μια συγκεκριμένη εμφάνιση μιας οντότητας.

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

Τι είναι ένα πρωτεύον κλειδί;

Ένα πρωτεύον κλειδί είναι το

το καλύτερο υποψήφιο κλειδί ενός πίνακα που χρησιμοποιείται για την μοναδική αναγνώριση αρχείων που είναι αποθηκευμένα σε έναν πίνακα . Κατά τη δημιουργία ενός νέου πίνακα σε μια βάση δεδομένων μας ζητείται να επιλέξετε ένα πρωτεύον κλειδί. Επομένως, η επιλογή ενός πρωτεύοντος κλειδιού για έναν πίνακα είναι η πιο κρίσιμη απόφαση που πρέπει να ληφθεί από έναν σχεδιαστή βάσης δεδομένων. Ο σημαντικότερος περιορισμός που πρέπει να λαμβάνεται υπόψη όταν αποφασίζεται ένα πρωτεύον κλειδί είναι ότι η επιλεγμένη στήλη του πίνακα πρέπει να περιέχει μόνο μοναδικές τιμές και δεν πρέπει να περιέχει τιμές NULL. Ορισμένα από τα πρωτεύοντα κλειδιά που χρησιμοποιούνται συνήθως κατά το σχεδιασμό πινάκων είναι ο αριθμός κοινωνικής ασφάλισης (SSN), ο αριθμός ταυτότητας και ο αριθμός εθνικής ταυτότητας (NIC). Ο προγραμματιστής πρέπει να θυμάται να επιλέγει προσεκτικά ένα κύριο κλειδί επειδή είναι δύσκολο να αλλάξει. Επομένως, σύμφωνα με τους προγραμματιστές, η βέλτιστη πρακτική για τη δημιουργία ενός πρωτεύοντος κλειδιού είναι η χρήση ενός εσωτερικώς δημιουργημένου πρωτεύοντος κλειδιού, όπως το αναγνωριστικό εγγραφής που δημιουργείται με τον τύπο δεδομένων AutoNumber του MS Access. Αν προσπαθήσουμε να εισαγάγουμε μια εγγραφή σε έναν πίνακα με ένα πρωτεύον κλειδί που διπλασιάζει μια υπάρχουσα εγγραφή, η εισαγωγή θα αποτύχει. Η τιμή του πρωτεύοντος κλειδιού δεν πρέπει να συνεχίσει να αλλάζει, οπότε είναι πιο σημαντικό να διατηρηθεί ένα στατικό πρωτεύον κλειδί.

Ένα πρωτεύον κλειδί είναι το καλύτερο υποψήφιο κλειδί.

Ποια είναι η διαφορά μεταξύ πρωτεύοντος κλειδιού και υποψήφιου κλειδιού;

• Ένα υποψήφιο κλειδί είναι η στήλη που χαρακτηρίζεται ως μοναδική ενώ το πρωτεύον κλειδί είναι η στήλη που αναγνωρίζει μονοσήμαντα μια εγγραφή.

• Ένας πίνακας χωρίς υποψήφια κλειδιά δεν αντιπροσωπεύει καμία σχέση.

• Μπορούν να υπάρχουν πολλά υποψήφια κλειδιά για έναν πίνακα σε μια βάση δεδομένων, αλλά θα πρέπει να υπάρχει μόνο ένα πρωτεύον κλειδί για έναν πίνακα.

• Αν και το πρωτεύον κλειδί είναι ένα από τα υποψήφια κλειδιά, μερικές φορές είναι το μόνο υποψήφιο κλειδί.

• Μόλις επιλεγεί ένα πρωτεύον κλειδί, τα άλλα υποψήφια κλειδιά γίνονται μοναδικά κλειδιά.

• Πρακτικά ένα υποψήφιο κλειδί μπορεί να περιέχει τιμές NULL αν και προς το παρόν δεν περιέχει καμία τιμή. Επομένως, το υποψήφιο κλειδί δεν είναι κατάλληλο για ένα πρωτεύον κλειδί επειδή το πρωτεύον κλειδί δεν πρέπει να περιέχει τιμές NULL.

• Μπορεί επίσης να είναι πιθανό ότι τα υποψήφια κλειδιά, τα οποία είναι μοναδικά προς το παρόν, ενδέχεται να περιέχουν διπλές τιμές που αποκλείουν ένα υποψήφιο κλειδί από το να γίνει πρωτεύον κλειδί.

Περίληψη:

Κύριο κλειδί έναντι υποψήφιου κλειδιού

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

Εικόνες Ευγένεια:

Πρωτογενές κλειδί από SqlPac (CC BY-SA 3. 0)