Memahami apa itu Primary Key, Foreign Key dan Candidate Key : Basis Data

Ilhamm
4 min readOct 12, 2023

--

Dalam model relasional, key penting karena digunakan untuk memastikan bahwa setiap baris dalam relasi dapat diidentifikasi secara unik. Key juga digunakan untuk membangun hubungan antar relasi dan untuk memastikan integritas data. Key terdiri atas satu atau beberapa atribut yang menentukan atribut lainnya, Key dapat dipahami sebagai ‘tanda pengenal’ untuk mengidentifikasi sebuah baris di dalam tabel. Artinya, masing-masing baris data pasti dan harus memiliki ‘tanda pengenal’-nya sendiri. Key dapat diibaratkan seperti Nomor Induk Kependudukan (NIK) untuk masyarakat Indonesia atau Nomor Induk Mahasiswa (NIM) untuk para mahasiswa. Kita tidak mungkin menemukan dua orang penduduk dengan NIK yang sama, dan kita juga tidak mungkin menemukan dua mahasiswa dengan NIM yang sama ‘kan? Nah, prinsip inilah yang harus kita ingat ketika menentukan atribut yang akan dijadikan key dalam sebuah tabel.

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 :

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

5 contoh penerapan primary key pada ERD:

  1. Pada ERD untuk sistem informasi akademik, primary key dapat digunakan untuk mengidentifikasi mahasiswa, dosen, atau mata kuliah. Contohnya, NIM (Nomor Induk Mahasiswa) dapat digunakan sebagai primary key untuk tabel mahasiswa.
  2. Pada ERD untuk sistem manajemen inventaris, kunci utama dapat digunakan untuk mengidentifikasi barang atau produk. Contohnya, kode produk dapat digunakan sebagai kunci utama untuk tabel produk.
  3. Pada ERD untuk sistem manajemen proyek, kunci utama dapat digunakan untuk mengidentifikasi tugas atau aktivitas. Contohnya, nomor tugas dapat digunakan sebagai kunci utama untuk tabel tugas.
  4. Pada ERD untuk sistem manajemen penjualan, kunci utama dapat digunakan untuk mengidentifikasi pelanggan atau pesanan. Contohnya, nomor pesanan dapat digunakan sebagai kunci utama untuk tabel pesanan.
  5. Pada ERD untuk sistem manajemen kepegawaian, kunci utama dapat digunakan untuk mengidentifikasi karyawan atau departemen. Contohnya, nomor karyawan dapat digunakan sebagai kunci utama untuk tabel karyawan.

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.

5 contoh penerapan Foreign key pada ERD:

1. Hubungan antara Tabel “Pemesanan” dan “Pelanggan”:

- Entitas “Pemesanan” memiliki foreign key yang mengacu pada entitas “Pelanggan”. Ini memungkinkan setiap pemesanan untuk terkait dengan pelanggan tertentu.

2. Hubungan antara Tabel “Pemesanan” dan “Produk”:

- Entitas “Pemesanan” memiliki foreign key yang mengacu pada entitas “Produk”. Ini memungkinkan setiap pemesanan untuk terkait dengan produk yang dipesan.

3. Sistem Pergudangan:

Tabel “Stok” dapat memiliki foreign key yang mengacu pada tabel “Produk” untuk menunjukkan produk apa yang tersedia dalam stok.

4. Sistem Katalog Film:

Tabel “Ulasan” dapat memiliki foreign key yang menghubungkannya dengan tabel “Film” untuk menunjukkan ulasan apa yang diberikan untuk film tertentu.

5. Sistem Logistik:

Tabel “Rute Pengiriman” dapat memiliki foreign key yang menghubungkannya dengan tabel “Pengiriman” untuk mengikuti rute yang digunakan untuk pengiriman barang.

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.

5 contoh penerapan Candidate Key pada ERD:

  1. Pada ERD untuk sistem manajemen inventaris, kunci kandidat dapat digunakan untuk mengidentifikasi produk. Contohnya, kode produk dapat digunakan sebagai kunci kandidat untuk tabel produk.
  2. Pada ERD untuk sistem manajemen proyek, kunci kandidat dapat digunakan untuk mengidentifikasi tugas atau aktivitas. Contohnya, nomor tugas dapat digunakan sebagai kunci kandidat untuk tabel tugas.
  3. Pada ERD untuk sistem manajemen penjualan, kunci kandidat dapat digunakan untuk mengidentifikasi pelanggan. Contohnya, nomor pelanggan dapat digunakan sebagai Candid Key untuk tabel pelanggan.
  4. Pada ERD untuk sistem manajemen kepegawaian, kunci kandidat dapat digunakan untuk mengidentifikasi karyawan. Contohnya, nomor karyawan dapat digunakan sebagai Candid Key untuk tabel karyawan.
  5. Pada ERD untuk sistem informasi akademik, kunci kandidat dapat digunakan untuk mengidentifikasi siswa. Contohnya, NIM (Nomor Induk Mahasiswa) dapat digunakan sebagai Candid Key untuk tabel mahasiswa.

Sekian Terimkasih
Ubpkarawang.ac.id makasih bapak Adirp.id

--

--