Basis data bergantung pada kunci untuk menyimpan, menyortir, dan membandingkan atau membuat hubungan antar rekaman. Jika Anda berada di sekitar database untuk sementara waktu, Anda mungkin pernah mendengar tentang berbagai jenis kunci: kunci primer, kunci kandidat, dan kunci asing. Ketika Anda membuat tabel database baru, Anda diminta untuk memilih satu kunci utama yang secara unik mengidentifikasi setiap rekaman yang disimpan dalam tabel itu.
Mengapa Kunci Utama Penting
Pemilihan kunci utama adalah salah satu keputusan paling penting yang Anda buat dalam desain database baru. Kendala yang paling penting adalah Anda harus memastikan bahwa kunci yang dipilih itu unik. Jika mungkin dua rekaman - masa lalu, sekarang, atau masa depan - dapat berbagi nilai yang sama untuk atribut, itu adalah pilihan yang buruk untuk kunci primer.
Aspek penting lainnya dari primary key adalah penggunaannya oleh tabel lain yang menghubungkannya dalam basis data relasional. Dalam aspek ini, kunci utama bertindak seperti target penunjuk. Karena saling ketergantungan ini, kunci utama harus ada ketika catatan dibuat, dan itu tidak pernah bisa berubah.
Pilihan Miskin untuk Kunci Utama
Apa yang dianggap beberapa orang sebagai pilihan yang jelas untuk kunci utama bisa menjadi pilihan yang buruk. Berikut beberapa contohnya:
- Kode pos jangan membuat kunci utama yang baik untuk meja kota. Jika Anda membuat tabel pencarian sederhana dari kota-kota, kode pos tampaknya menjadi kunci utama yang logis. Namun, setelah penyelidikan lebih lanjut, Anda mungkin menyadari bahwa lebih dari satu kota berbagi kode pos. Misalnya, kota New Jersey, Neptunus, Kota Neptunus, Air Terjun Tinton, dan Kota Tembok, semuanya berbagi kode pos 07753.
- Nomor Jaminan Sosial jangan membuat kunci utama yang baik karena berbagai alasan. Kebanyakan orang menganggap SSN mereka sebagai pribadi dan tidak ingin terlihat jelas bagi pengguna database. Beberapa orang tidak memiliki SSN - orang asing atau imigran yang belum pernah menerima kartu Jaminan Sosial. SSN juga dapat digunakan kembali setelah kematian seseorang. Seseorang mungkin memiliki lebih dari satu SSN selama seumur hidup ketika Administrasi Jaminan Sosial mengeluarkan nomor baru dalam kasus penipuan atau pencurian identitas.
- Alamat email juga merupakan pilihan yang buruk untuk kunci utama. Meskipun mereka unik, mereka dapat berubah seiring waktu. Selain itu, tidak semua orang memiliki alamat email.
Memilih Kunci Utama yang Efektif
Jadi, apa yang membuat kunci utama yang baik? Dalam kebanyakan kasus, beralih ke sistem database Anda untuk dukungan.
Praktik terbaik dalam desain basis data adalah menggunakan kunci primer yang dihasilkan secara internal. Sistem manajemen basis data Anda biasanya dapat menghasilkan pengenal unik yang tidak memiliki arti di luar sistem basis data. Misalnya, Anda mungkin menggunakan tipe data Microsoft Access AutoNumber untuk membuat bidang yang disebut RecordID. Jenis data AutoNumber secara otomatis akan menambah bidang setiap kali Anda membuat rekaman. Meskipun bilangan itu sendiri tidak berarti, ia menyediakan cara yang dapat diandalkan untuk mereferensikan catatan individu dalam kueri.
Kunci utama yang baik biasanya pendek, menggunakan angka, dan menghindari karakter khusus atau campuran huruf besar dan huruf kecil untuk memfasilitasi pencarian dan perbandingan database yang cepat.