Direkomendasikan, 2024

Pilihan Editor

Perbedaan Antara Kunci Utama dan Kandidat

Kunci adalah atribut, atau sekumpulan atribut yang digunakan untuk mengakses tupel dari tabel atau mereka juga digunakan untuk membangun hubungan antara dua tabel. Dalam artikel ini, kita akan membahas Kunci Utama dan Kandidat serta perbedaan di antara mereka. Baik Primary dan Candidate Key secara unik mengidentifikasi tuple dalam relasi atau tabel. Tapi, poin paling penting yang membedakan mereka adalah bahwa hanya ada satu kunci utama dalam suatu hubungan. Namun, bisa ada lebih dari satu kunci kandidat dalam suatu hubungan.

Ada beberapa perbedaan lagi antara Kunci Utama dan Kandidat yang akan saya bahas dengan bantuan tabel perbandingan yang ditunjukkan di bawah ini.

Grafik perbandingan

Dasar untuk PerbandinganKunci utamaKandidat Kunci
DasarHanya ada satu kunci utama dalam hubungan apa pun.Mungkin ada lebih dari satu kunci kandidat dalam suatu relasi.
BATALAtribut kunci Utama tidak boleh berisi nilai NULL.Atribut kunci Kandidat dapat memiliki nilai NULL.
MenentukanIni opsional untuk menentukan kunci utama untuk hubungan apa pun.Tidak akan ada hubungan tanpa kunci kandidat ditentukan.
FiturKunci primer menjelaskan atribut paling penting untuk relasi.Kandidat kunci menyajikan kandidat yang dapat memenuhi syarat untuk Primary Key.
Dan sebaliknyaKunci utama adalah kunci kandidat.Tetapi tidak wajib bahwa setiap kunci kandidat dapat menjadi kunci utama.

Definisi Kunci Utama

Primary Key adalah atribut atau serangkaian atribut yang secara unik akan mengidentifikasi setiap tuple dalam suatu relasi. Hanya ada satu kunci utama untuk setiap relasi. Harus diperhatikan bahwa kunci utama tidak boleh mengandung nilai NULL, dan harus memiliki nilai unik untuk setiap tuple dalam relasi. Nilai atribut / kunci utama harus statis, yaitu, nilai atribut tidak boleh atau jarang berubah.

Salah satu Kunci Kandidat mendapat kualifikasi untuk menjadi kunci utama. Aturan bahwa kunci kandidat harus memenuhi syarat untuk menjadi utama adalah bahwa nilai kunci tidak boleh NULL dan harus unik untuk semua tupel.

Jika suatu relasi berisi atribut yang merupakan kunci utama dari beberapa relasi lain, maka atribut itu disebut kunci asing .

Disarankan untuk mencari kunci utama suatu relasi sebelum memperkenalkan atribut relasi lainnya ketika kunci primer mengidentifikasi masing-masing tuple secara unik. Lebih baik memilih satu atribut atau sejumlah kecil atribut sebagai kunci primer yang memudahkan penanganan relasi.

Sekarang mari kita lihat contoh kunci Utama.

 Student {ID, First_name, Last_name, Age, Address} 

Di sini kita pertama-tama akan mencari kunci kandidat. Saya telah menemukan dua kunci kandidat {ID} dan {First_name, Last_name} karena mereka akan secara unik mengidentifikasi setiap siswa dalam hubungan Siswa. Sekarang, di sini saya akan memilih ID sebagai kunci utama saya karena kadang-kadang mungkin terjadi bahwa dua siswa mungkin memiliki nama depan dan belakang yang sama, sehingga akan mudah untuk melacak siswa dengan ID- nya.

Definisi Kunci Kandidat

Kunci kandidat adalah atribut atau sekumpulan atribut yang secara unik mendefinisikan sebuah tuple dalam suatu relasi. Ada lebih dari satu kunci kandidat dalam suatu relasi. Kunci Kandidat ini adalah kandidat yang dapat memenuhi syarat untuk menjadi kunci utama.

Meskipun setiap kunci kandidat memenuhi syarat untuk menjadi kunci utama, hanya satu yang dapat dipilih sebagai kunci utama. Aturan yang diperlukan oleh kandidat kunci untuk menjadi kunci utama adalah nilai atribut kunci tersebut tidak pernah bisa NULL dalam domain kunci apa pun, itu harus unik dan statis .

Jika semua kunci kandidat memenuhi syarat untuk kunci primer, maka DBA yang berpengalaman harus mengambil keputusan untuk mengetahui kunci utama. Tidak akan pernah ada hubungan tanpa kunci kandidat.

Mari kita pahami kunci kandidat dengan sebuah contoh. Jika kita menambahkan beberapa atribut lagi ke hubungan Siswa, saya bahas di atas.

 Student {ID, First_name, Last_name, Age, Address, DOB, Department_name} 

Di sini saya dapat menemukan dua kunci kandidat yaitu {ID}, {First_name, Last_name, DOB} . Jadi, Anda dapat memahami kunci kandidat adalah kunci yang secara unik mengidentifikasi sebuah tuple dalam suatu relasi.

Perbedaan Kunci Antara Kunci Utama dan Kandidat

  1. Poin dasar yang membedakan kunci primer dari kunci kandidat adalah bahwa hanya ada satu primer untuk setiap hubungan dalam suatu skema. Namun, mungkin ada beberapa kunci kandidat untuk satu relasi.
  2. Atribut di bawah kunci utama tidak pernah dapat berisi nilai NULL karena fungsi utama dari kunci utama adalah untuk mengidentifikasi secara unik suatu catatan dalam kaitannya. Bahkan kunci primer dapat digunakan sebagai kunci asing dalam relasi lain, dan karenanya itu tidak boleh NULL sehingga relasi referensi dapat menemukan tupel dalam relasi referensi. Kunci kandidat dapat berupa NULL kecuali batasan atribut ditentukan bukan null.
  3. Ini opsional untuk menentukan kunci utama, tetapi tidak ada hubungan tanpa kunci kandidat.
  4. Kunci primer menjelaskan atribut unik dan paling penting dari suatu hubungan, sedangkan kunci kandidat memberikan kandidat di mana seseorang dapat dipilih sebagai kunci primer.
  5. Setiap kunci utama adalah kunci kandidat, tetapi sebaliknya tidak benar.

Kesimpulan:

Merupakan opsional untuk relasi untuk menentukan kunci utama. Di sisi lain, jika Anda mendeklarasikan suatu relasi, kunci kandidat harus ada dalam relasi tersebut untuk membangun relasi yang baik.

Top