Πίνακας περιεχομένων:
Ορισμός - Τι σημαίνει το πρωτεύον κλειδί;
Ένα πρωτεύον κλειδί είναι μια ειδική στήλη πίνακα σχεσιακής βάσης δεδομένων (ή συνδυασμός στηλών) που έχει οριστεί για να αναγνωρίζει με μοναδικό τρόπο όλα τα αρχεία πίνακα.
Τα βασικά χαρακτηριστικά του πρωτεύοντος κλειδιού είναι:
- Πρέπει να περιέχει μια μοναδική τιμή για κάθε σειρά δεδομένων.
- Δεν μπορεί να περιέχει μηδενικές τιμές.
Ένα πρωτεύον κλειδί είναι είτε μια υπάρχουσα στήλη πίνακα είτε μια στήλη που δημιουργείται ειδικά από τη βάση δεδομένων σύμφωνα με μια καθορισμένη ακολουθία.
Η Techopedia εξηγεί το πρωτεύον κλειδί
Η έννοια του πρωτεύοντος κλειδιού είναι κρίσιμη για μια αποδοτική σχεσιακή βάση δεδομένων. Χωρίς το πρωτεύον κλειδί και τις στενά συναφείς έννοιες ξένων κλειδιών, οι σχεσιακές βάσεις δεδομένων δεν θα λειτουργούσαν.
Σχεδόν όλα τα άτομα ασχολούνται με τα βασικά κλειδιά συχνά αλλά εν αγνοία τους στην καθημερινή ζωή. Για παράδειγμα, οι μαθητές αποδίδουν ρουτίνα μοναδικούς αριθμούς ταυτότητας (ID) και όλοι οι Αμερικανοί πολίτες έχουν αριθμούς κοινωνικής ασφάλισης που έχουν εκχωρηθεί από την κυβέρνηση και είναι μοναδικά αναγνωρίσιμοι.
Για παράδειγμα, μια βάση δεδομένων πρέπει να περιέχει όλα τα δεδομένα που αποθηκεύονται από μια εμπορική τράπεζα. Δύο από τους πίνακες βάσης δεδομένων περιλαμβάνουν το CUSTOMER_MASTER, το οποίο αποθηκεύει βασικά και στατικά δεδομένα πελατών (όνομα, ημερομηνία γέννησης, διεύθυνση, αριθμός κοινωνικής ασφάλισης κλπ.) Και το λογαριασμό ACCOUNTS_MASTER, το οποίο αποθηκεύει διάφορα δεδομένα τραπεζικών λογαριασμών (ημερομηνία δημιουργίας λογαριασμού, όρια απόσυρσης ή αντίστοιχες πληροφορίες λογαριασμού κ.λπ.).
Για να προσδιορίσουμε με μοναδικό τρόπο τους πελάτες, επιλέγεται μια στήλη ή συνδυασμός στηλών για να εγγυηθεί ότι δύο πελάτες δεν έχουν ποτέ την ίδια μοναδική αξία. Επομένως, ορισμένες στήλες εξαλείφονται αμέσως, π.χ. επώνυμο και ημερομηνία γέννησης. Ένας καλός υποψήφιος πρωτογενούς κλειδιού είναι η στήλη που έχει οριστεί για να κατέχει αριθμούς κοινωνικής ασφάλισης. Ωστόσο, ορισμένοι κάτοχοι λογαριασμού ενδέχεται να μην έχουν αριθμούς κοινωνικής ασφάλισης, οπότε η υποψηφιότητα αυτής της στήλης εξαλείφεται. Η επόμενη λογική επιλογή είναι να χρησιμοποιηθεί ένας συνδυασμός στηλών, όπως η προσθήκη του επώνυμου στην ημερομηνία γέννησης στη διεύθυνση ηλεκτρονικού ταχυδρομείου, με αποτέλεσμα ένα μεγάλο και δυσκίνητο πρωτεύον κλειδί.
Η καλύτερη επιλογή είναι να δημιουργήσετε ένα ξεχωριστό πρωτεύον κλειδί σε μια νέα στήλη που ονομάζεται CUSTOMER_ID. Στη συνέχεια, η βάση δεδομένων δημιουργεί αυτόματα έναν μοναδικό αριθμό κάθε φορά που προστίθεται ένας πελάτης, εξασφαλίζοντας μοναδική αναγνώριση. Καθώς δημιουργείται αυτό το κλειδί, η στήλη ορίζεται ως το πρωτεύον κλειδί μέσα στη δέσμη ενεργειών SQL που δημιουργεί τον πίνακα και όλες οι μηδενικές τιμές απορρίπτονται αυτόματα.
Ο αριθμός λογαριασμού που συνδέεται με κάθε CUSTOMER_ID επιτρέπει την ασφαλή διεκπεραίωση των ερωτημάτων του πελάτη και επίσης καταδεικνύει γιατί τα πρωτεύοντα κλειδιά προσφέρουν την ταχύτερη μέθοδο αναζήτησης δεδομένων μέσα στους πίνακες. Για παράδειγμα, ένας πελάτης μπορεί να καλείται να παράσχει το επώνυμό του κατά τη διεξαγωγή τραπεζικού ερωτήματος. Ένα κοινό ερώτημα επώνυμου (όπως το Smith) είναι πιθανό να επιστρέψει πολλά αποτελέσματα. Όταν ερωτάτε δεδομένα, χρησιμοποιώντας τη λειτουργία μοναδικότητας του πρωτεύοντος κλειδιού, εγγυάται ένα αποτέλεσμα.