Skip to main content

Apa itu kunci utama?

Kunci utama adalah entri dalam database yang unik untuk satu catatan.Kunci ini umumnya diturunkan dalam salah satu dari dua cara: kode identifikasi unik dari luar database atau nomor yang dihasilkan dari dalam database.Ketika database akan berisi informasi yang selalu unik untuk entri, seperti nomor jaminan sosial atau nomor identifikasi bagian, maka itu biasanya digunakan sebagai kunci utama.Ketika data tidak akan memiliki pengidentifikasi seperti itu, database akan sering membuat angka berdasarkan sistem internalnya untuk memberikan setiap catatan kode yang unik.

Ada tiga batasan utama pada kunci utama: keberadaan, keunikan dan keabadian.Kunci harus ada pada saat catatan dibuat mdash;Itu tidak bisa ditambahkan nanti.Setiap kunci harus sangat berbeda dari kunci lain.Ini berarti bahwa pengidentifikasi umum, seperti nama atau tanggal lahir, tidak dapat digunakan karena ada kemungkinan bahwa dua orang dilahirkan pada hari yang sama dengan nama yang sama.Terakhir, kunci utama tidak pernah dapat diubah begitu dibuat.

Karena database berpotensi memiliki jumlah entri yang tak terbatas, kunci utama juga harus tak terbatas.Untuk memastikan bahwa database tidak akan pernah kehabisan tombol, sebagian besar catatan menggunakan kode numerik untuk kunci tersebut.Karena angka selalu bisa menjadi lebih besar dan komputer dapat dengan mudah menambahkan nol tempat-tempat ke entri yang lebih lama, suatu sistem tidak akan pernah kehabisan kunci.Kadang-kadang angka-angka ini didasarkan pada informasi non-unik, tetapi pengidentifikasi unik ditambahkan untuk memastikan kuncinya layak.

Database akan menggunakan kunci utama sebagai cara mengatur data.Karena kuncinya tidak pernah diulang, informasi itu akan memungkinkan database untuk membuat setiap catatan terpisah dari yang lain.Setiap informasi dalam catatan terhubung kembali ke kunci;Dengan begitu, apa pun yang terjadi pada sistem, database dapat membangun kembali catatan dari informasi longgar.

Menetapkan kunci utama yang bermakna sering dipandang sebagai praktik yang lebih baik daripada menghasilkan nilai.Ini akan memberikan catatan pengidentifikasi yang keduanya berfungsi sebagai kunci dan menyediakan data.Dalam database kecil, perbedaan ini jarang diperlukan, tetapi dalam sistem besar, ruang ekstra yang digunakan oleh kunci yang dihasilkan dapat terjadi adalah kembung basis data yang serius.Ini akan memperlambat sistem dan membuat database membutuhkan ruang penyimpanan secara signifikan lebih.