Perbedaan antara kunci utama dan kunci kandidat

Perbedaan antara kunci utama dan kunci kandidat

Kunci utama vs kandidat kunci
 

Meskipun kunci utama dipilih dari kunci kandidat ada beberapa perbedaan antara kunci utama dan kunci kandidat lainnya, yang akan dibahas secara rinci dalam artikel ini. Desain Basis Data adalah salah satu aktivitas terpenting yang harus dilakukan saat memelihara dan menyimpan data. Selama proses perancangan ini, berbagai tabel dengan banyak hubungan harus dibuat. Untuk mengakses tabel ini dalam database, berbagai jenis kunci digunakan dalam bahasa perancang database modern seperti MySQL, MSAccess, SQLite, dll. Dari kunci -kunci ini, kunci kandidat dan kunci utama telah menjadi penting dalam praktik perancangan database.

Apa itu kunci kandidat?

Kunci kandidat adalah satu kolom atau set kolom dalam tabel database yang dapat digunakan untuk secara unik mengidentifikasi catatan database apa pun tanpa mengacu pada data lain. Setiap tabel database dapat memiliki satu atau lebih dari satu kunci kandidat. Satu set kunci kandidat dapat dibuat dengan menggunakan dependensi fungsional. Ada beberapa fitur penting dalam kunci kandidat. Mereka;

• Kunci kandidat harus unik dalam domain dan mereka tidak boleh mengandung nilai nol apa pun.

• Kunci kandidat tidak boleh berubah, dan harus memiliki nilai yang sama untuk kejadian tertentu dari suatu entitas.

Tujuan utama dari kunci kandidat adalah untuk membantu mengidentifikasi satu baris tunggal dari jutaan baris dalam tabel besar. Setiap kunci kandidat memenuhi syarat untuk menjadi kunci utama. Namun, dari semua kunci kandidat, kunci kandidat yang paling penting dan khusus akan menjadi kunci utama tabel dan itu adalah yang terbaik di antara kunci kandidat.

Apa itu kunci utama?

Kunci utama adalah Kunci kandidat terbaik dari tabel yang digunakan untuk mengidentifikasi catatan secara unik yang disimpan di meja. Saat membuat tabel baru dalam database, kami diminta untuk memilih kunci utama. Oleh karena itu, pemilihan kunci utama untuk tabel adalah keputusan paling kritis yang harus diambil oleh perancang database. Kendala yang paling penting, yang harus dipertimbangkan ketika memutuskan kunci utama, adalah bahwa kolom tabel yang dipilih hanya boleh berisi nilai -nilai unik, dan tidak boleh berisi nilai nol apa pun. Beberapa kunci utama yang biasa digunakan saat merancang tabel adalah nomor jaminan sosial (SSN), ID dan nomor kartu identitas nasional (NIC).

Programmer harus ingat untuk memilih kunci utama dengan hati -hati karena sulit untuk diubah. Oleh karena itu, menurut pemrogram, praktik terbaik untuk membuat kunci utama adalah menggunakan kunci primer yang dihasilkan secara internal seperti ID Rekaman yang dibuat oleh AutOnmer Data Type dari MS Access. Jika kami mencoba memasukkan catatan ke dalam tabel dengan kunci utama yang menduplikasi catatan yang ada, penyisipan akan gagal. Nilai kunci utama tidak boleh terus berubah, jadi lebih penting untuk menjaga kunci primer statis.

Kunci utama adalah kunci kandidat terbaik.

Apa perbedaan antara kunci utama dan kunci kandidat?

• Kunci kandidat adalah kolom yang memenuhi syarat sebagai unik sedangkan kunci utama adalah kolom yang secara unik mengidentifikasi catatan.

• Tabel tanpa kunci kandidat tidak mewakili hubungan apa pun.

• Mungkin ada banyak kunci kandidat untuk tabel dalam database, tetapi seharusnya hanya ada satu kunci utama untuk sebuah tabel.

• Meskipun kunci utama adalah salah satu kunci kandidat, kadang -kadang itu adalah satu -satunya kunci kandidat.

• Setelah kunci utama dipilih, kunci kandidat lainnya menjadi kunci unik.

• Secara praktis kunci kandidat dapat berisi nilai nol meskipun saat ini tidak mengandung nilai apa pun. Oleh karena itu, kunci kandidat tidak memenuhi syarat untuk kunci utama karena kunci utama tidak boleh berisi nilai nol apa pun.

• Mungkin juga bahwa kunci kandidat, yang unik saat ini, dapat berisi nilai duplikat yang mendiskualifikasi kunci kandidat dari menjadi kunci utama.

Ringkasan:

Kunci utama vs. Kunci kandidat

Kunci kandidat dan kunci utama adalah kunci penting yang digunakan dalam merancang database untuk mengidentifikasi data secara unik dalam suatu catatan dan membuat hubungan di antara tabel database. Tabel harus hanya berisi satu kunci utama dan mungkin berisi lebih dari satu kunci kandidat. Saat ini, sebagian besar database mampu menghasilkan kunci utama mereka sendiri. Oleh karena itu, kunci utama dan kunci kandidat memberikan banyak dukungan untuk sistem manajemen basis data.

Gambar milik: 

  1. Kunci utama oleh SQLPAC (CC BY-SA 3.0)