Direkomendasikan, 2021

Pilihan Editor

Perbedaan Antara Super Key dan Calon Key

Kunci adalah elemen penting dari setiap basis data relasional. Ini mengidentifikasi setiap tuple dalam suatu relasi secara unik. Kunci juga digunakan untuk membangun hubungan di antara tabel dalam suatu skema. Pada artikel ini, kita akan membahas dua kunci dasar dari setiap basis data yaitu kunci super dan kunci kandidat. Setiap kunci kandidat adalah kunci super tetapi, setiap kunci super mungkin atau mungkin bukan kunci kandidat. Ada banyak faktor pembeda lainnya antara kunci super dan kunci kandidat, yang telah saya diskusikan secara singkat dalam tabel perbandingan di bawah ini.

Grafik perbandingan

Dasar untuk PerbandinganKunci SuperKandidat Kunci
DasarAtribut tunggal atau sekumpulan atribut yang secara unik mengidentifikasi semua atribut dalam suatu relasi adalah super key.Subset yang tepat dari kunci super, yang juga merupakan kunci super adalah kunci kandidat.
Satu di lainnyaTidak wajib bahwa semua kunci super akan menjadi kunci kandidat.Semua kunci kandidat adalah kunci super.
PilihanSet kunci super membentuk dasar untuk pemilihan kunci kandidat.Set kunci kandidat membentuk dasar untuk pemilihan kunci primer tunggal.
MenghitungAda relatif lebih banyak kunci super dalam suatu relasi.Ada relatif sedikit kunci kandidat dalam suatu relasi.

Definisi kunci Super

Kunci super adalah kunci dasar dari hubungan apa pun. Ini didefinisikan sebagai kunci yang dapat mengidentifikasi semua atribut lainnya dalam suatu hubungan . Super key dapat berupa satu atribut atau satu set atribut. Dua entitas tidak memiliki nilai yang sama untuk atribut yang menyusun kunci super. Setidaknya ada satu atau lebih dari satu kunci super dalam suatu relasi.

Kunci super minimal juga disebut kunci kandidat. Jadi kita dapat mengatakan beberapa kunci super diverifikasi karena menjadi kunci kandidat. Kita akan melihat nanti bagaimana superkey diperiksa untuk menjadi kunci kandidat.

Mari kita ambil relasi R (A, B, C, D, E, F); kami memiliki dependensi berikut untuk relasi R, dan kami telah memeriksa masing-masing sebagai super key.

Dengan menggunakan kunci, AB kita dapat mengidentifikasi sisa atribut tabel yaitu CDEF . Demikian pula, menggunakan CD kunci , ABD, DF, dan DEF kita dapat mengidentifikasi atribut yang tersisa dari tabel R. Jadi semua ini adalah kunci super.

Tetapi menggunakan kunci CB kita hanya dapat menemukan nilai untuk atribut D dan F, kita tidak dapat menemukan nilai untuk atribut A dan E. Karenanya, CB bukanlah kunci super. Sama halnya dengan kunci D kita tidak bisa menemukan nilai-nilai semua atribut dalam tabel menggunakan kunci D. Jadi, D bukan kunci super.

Definisi Kunci Kandidat

Kunci super yang merupakan subset yang tepat dari kunci super lain dari hubungan yang sama disebut kunci super minimal . Kunci super minimal disebut tombol Kandidat . Seperti kunci super, kunci kandidat juga mengidentifikasi setiap tupel dalam tabel secara unik. Atribut key kandidat dapat menerima nilai NULL .

Salah satu kunci kandidat dipilih sebagai kunci utama oleh DBA . Asalkan, nilai atribut kunci harus unik dan tidak mengandung NULL. Atribut kunci Kandidat disebut atribut prima .

Dalam contoh di atas, kami telah menemukan kunci Super untuk hubungan R. Sekarang, mari kita periksa semua kunci super untuk menjadi kunci Kandidat.

Super key AB adalah subset yang tepat dari super key ABD . Jadi, ketika AB kunci super minimal saja, mampu mengidentifikasi semua atribut dalam sebuah tabel, maka kita tidak perlu ABD kunci lebih besar. Karenanya, AB super kunci adalah kunci kandidat sedangkan ABD hanya akan menjadi kunci super.
Demikian pula, DF tombol super juga merupakan subset DEF kunci super yang tepat. Jadi, ketika DF sendirian mampu mengidentifikasi semua atribut dalam suatu hubungan mengapa kita membutuhkan DEF . Karenanya, super key DF menjadi kunci kandidat sementara DEF hanya merupakan super key.

CD kunci super bukan bagian yang benar dari kunci super lainnya. Jadi, kita dapat mengatakan CD adalah kunci super minimal yang mengidentifikasi semua atribut dalam suatu hubungan. Karenanya, CD adalah kunci kandidat.

Sedangkan CB kunci dan D bukan super key, mereka bahkan tidak bisa menjadi kandidat key. Melihat tabel di atas, Anda dapat menyimpulkan bahwa setiap kunci kandidat adalah kunci super tetapi kebalikannya tidak benar.

Perbedaan Kunci Antara Super Key dan Calon Key

  1. Atribut tunggal atau sekumpulan atribut yang secara unik dapat mengidentifikasi semua atribut hubungan tertentu disebut Super key. Di sisi lain, kunci super yang merupakan subset yang tepat dari kunci super lain disebut kunci kandidat.
  2. Semua kunci kandidat adalah kunci super tetapi kebalikannya tidak benar.
  3. Himpunan kunci super diverifikasi untuk menemukan kunci kandidat, sedangkan himpunan kunci kandidat diverifikasi untuk memilih satu kunci utama.
  4. Super key relatif lebih banyak daripada kunci kandidat.

Kesimpulan:

Kunci super adalah kunci dasar dari segala hubungan. Mereka harus diplot terlebih dahulu sebelum mengenali kunci lain untuk relasi karena mereka membentuk dasar untuk kunci lain. Kandidat kunci penting karena membantu dalam mengenali kunci yang paling penting dari setiap hubungan yang merupakan kunci utama.

Top