Primary Key, Foreign Key, dan Candidate Key? Begini penjelasannya

Apa itu Primary Key ?

Primary key adalah suatu atribut(bisa satu atau lebih) yang digunakan untuk mendefinisikan atau memastikan bahwa setiap record didalam tabel tersebut bersifat unique atau berbeda antara yang satu dengan yang lainya.

Syarat nilai pada atribut yang dijadikan primary key :

  • Bersifat Unik atau berbeda dengan nilai atribut pada record lainya.
  • Nilai atribut tidak boleh Null (kosong, tidak diketahui, tidak dapat ditentukan)
  • Nilai Key tersebut lebih natural untuk dijadikan acuan


Contoh Primary Key:



            gambar 1: Atribut Primary Key




            gambar 2: Nilai primary key




    Sebagai contoh disini kita telah memiliki sebuah tabel mahasiswa dimana atribut – atribut nya terdiri dari id, nama, alamat, nik dan nim . pada tabel tersebut atrribut id akan kita jadikan sebagai primary key sehingga pada Gambar 2 nilai dari attribut yang kita jadikan primary key value nya harus bersifat unik atau harus berbeda dengan nilai pada baris lainya.


Apa itu Foreign Key ?

    Foreign key adalah suatu atribut (bisa satu atau lebih) yang digunakan sebagai penghubung antara tabel satu dengan tabel yang lainya pada database relational.Tujuan dari kunci Asing adalah untuk menjaga integritas data dan memungkinkan navigasi antara dua contoh entitas yang berbeda. Foreign key ini bertindak sebagai referensi silang antara dua tabel karena mereferensikan kunci utama atau primary key dari tabel lain.

Contoh Foreign Key :





    

    Dari tabel yang sebelumnya kita hanya punya satu tabel sekarang kita tambah tabelnya menjadi 2 dengan menambahkan satu tabel dengan nama prodi. Karena antara tabel mahasiswa dan prodi memiliki hubungan maka kita harus membuat relasi dari kedua tabel tersebut. Untuk membuat relasinya kita membutuhkan sebuah foreign key sehingga kita tambahkan sebuah atrribut baru dengan nama kode_prodi pada tabel mahasiswa. kode_prodi akan menjadi kunci tamu dari kunci utama pada tabel prodi sehingga nilai dari atrribut kode_prodi pada tabel mahasiswa harus sama dengan nilai-nilai yang tersedia pada tabel prodi.


Apa Itu Candidate Key ?

    Candidate Key merupakan sekumpulan atribut yang secara unik mengidentifikasi tupel dalam sebuah tabel. Kunci Kandidat adalah super key tanpa atribut berulang. jika melihat pada super key ada beberapa gabungan field yang bisa dijadikan key, maka pada candidate key ini kita lihat gabungan/himpunan yang paling sedikit, jika ada gabungan 3 field, gabungan 2 field, dan 1 field saja maka yang pantas menjadi candidate key adalah yang 1 field saja.


Contoh Candidate Key :



                            contoh gambar candidate key


Contoh studi kasus :











Komentar

Postingan populer dari blog ini

Apa itu Relasi dalam ERD? Mengapa many to many tidak baik digunakan dalam ERD?

Normalisasi dalam ERD