Μην χρησιμοποιείτε ταχυδρομικό κώδικα ή αριθμό κοινωνικής ασφάλισης
Οι βάσεις δεδομένων εξαρτώνται από τα κλειδιά για την αποθήκευση, την ταξινόμηση και τη σύγκριση ή τη δημιουργία σχέσεων μεταξύ των εγγραφών. Αν έχετε περιηγηθεί σε βάσεις δεδομένων για λίγο, πιθανότατα έχετε ακούσει για διαφορετικούς τύπους κλειδιών: πρωτεύοντα κλειδιά, υποψήφια κλειδιά και ξένα κλειδιά . Όταν δημιουργείτε έναν νέο πίνακα βάσης δεδομένων, σας ζητείται να επιλέξετε ένα πρωτεύον κλειδί που θα αναγνωρίζει με μοναδικό τρόπο κάθε εγγραφή που είναι αποθηκευμένη στον συγκεκριμένο πίνακα.
Γιατί ένα πρωτεύον κλειδί είναι σημαντικό
Η επιλογή ενός πρωτογενούς κλειδιού είναι μια από τις πιο κρίσιμες αποφάσεις που θα λάβετε κατά το σχεδιασμό μιας νέας βάσης δεδομένων . Ο σημαντικότερος περιορισμός είναι ότι πρέπει να διασφαλίσετε ότι το επιλεγμένο κλειδί είναι μοναδικό. Εάν είναι πιθανό ότι δύο εγγραφές - παρελθόν, παρόν ή μέλλον - μπορεί να μοιράζονται την ίδια τιμή για ένα χαρακτηριστικό, είναι μια κακή επιλογή για ένα πρωτεύον κλειδί.
Μια άλλη σημαντική πτυχή ενός πρωτεύοντος κλειδιού είναι η χρήση του από άλλους πίνακες που συνδέονται με αυτό σε μια σχεσιακή βάση δεδομένων. Από αυτή την άποψη, ένα πρωτεύον κλειδί δρα σαν ο στόχος ενός δείκτη. Λόγω αυτών των αλληλεξαρτήσεων, ένα πρωτεύον κλειδί πρέπει να υπάρχει όταν δημιουργείται ένα αρχείο και δεν μπορεί ποτέ να αλλάξει.
Κακές επιλογές για τα πρωτεύοντα κλειδιά
Αυτό που μερικοί άνθρωποι μπορεί να θεωρούν μια προφανή επιλογή για ένα πρωτεύον κλειδί μπορεί να είναι μια κακή επιλογή αντ 'αυτού. Ακολουθούν μερικά παραδείγματα:
- Οι ταχυδρομικοί κώδικες δεν κάνουν καλά τα βασικά κλειδιά για έναν πίνακα πόλεων. Αν κάνετε έναν απλό πίνακα αναζήτησης των πόλεων, ο ταχυδρομικός κώδικας φαίνεται να είναι ένα λογικό πρωτεύον κλειδί. Ωστόσο, μετά από περαιτέρω διερεύνηση, μπορεί να συνειδητοποιήσετε ότι περισσότερες από μία πόλη μοιράζονται έναν ταχυδρομικό κώδικα. Για παράδειγμα, οι πόλεις του Νιου Τζέρσεϋ του Ποσειδώνα, της πόλης Neptune, του Tinton Falls και του Wall Township μοιράζονται το ταχυδρομικό κώδικα 07753.
- Οι αριθμοί κοινωνικής ασφάλισης δεν κάνουν καλά τα βασικά κλειδιά για πολλούς λόγους. Οι περισσότεροι θεωρούν ότι το SSN τους είναι ιδιωτικό και δεν το θέλει να είναι ορατό στους χρήστες της βάσης δεδομένων. Μερικοί άνθρωποι δεν έχουν SSNs-αλλοδαπούς ή μετανάστες που δεν έχουν λάβει ποτέ κάρτα κοινωνικής ασφάλισης. Τα SSN μπορούν επίσης να επαναχρησιμοποιηθούν μετά το θάνατο ενός ατόμου. Ένα άτομο μπορεί να έχει περισσότερα από ένα SSN για μια ολόκληρη ζωή όταν η Διοίκηση Κοινωνικής Ασφάλισης εκδίδει έναν νέο αριθμό σε περιπτώσεις απάτης ή κλοπής ταυτότητας.
- Οι διευθύνσεις ηλεκτρονικού ταχυδρομείου είναι επίσης κακή επιλογή για ένα πρωτεύον κλειδί. Μολονότι είναι μοναδικά, μπορούν να αλλάξουν με την πάροδο του χρόνου. Επιπλέον, δεν έχει όλοι μια διεύθυνση ηλεκτρονικού ταχυδρομείου.
Επιλέγοντας ένα αποτελεσματικό πρωτεύον κλειδί
Έτσι, τι κάνει ένα καλό κύριο πρωτεύον κλειδί; Στις περισσότερες περιπτώσεις, απευθυνθείτε στο σύστημα βάσης δεδομένων για υποστήριξη.
Μια βέλτιστη πρακτική στο σχεδιασμό βάσης δεδομένων είναι να χρησιμοποιήσετε ένα εσωτερικώς δημιουργημένο πρωτεύον κλειδί. Το σύστημά σας διαχείρισης βάσεων δεδομένων μπορεί κανονικά να δημιουργήσει ένα μοναδικό αναγνωριστικό που δεν έχει νόημα εκτός του συστήματος βάσης δεδομένων. Για παράδειγμα, ενδέχεται να χρησιμοποιήσετε τον τύπο δεδομένων Microsoft Access AutoNumber για να δημιουργήσετε ένα πεδίο που ονομάζεται RecordID. Ο τύπος δεδομένων AutoNumber αυξάνει αυτόματα το πεδίο κάθε φορά που δημιουργείτε μια εγγραφή. Ενώ ο ίδιος ο αριθμός δεν έχει νόημα, παρέχει έναν αξιόπιστο τρόπο αναφοράς μιας μεμονωμένης εγγραφής στα ερωτήματα.
Ένα καλό πρωτεύον κλειδί είναι συνήθως σύντομο, χρησιμοποιεί αριθμούς και αποφεύγει ειδικούς χαρακτήρες ή ένα μείγμα κεφαλαίων και πεζών χαρακτήρων για να διευκολύνει την ταχεία αναζήτηση δεδομένων και συγκρίσεις.