entity relationship diagram

Apa itu Key?

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.

Selain berperan sebagai ‘tanda pengenal’, jenis key dalam database juga berperan sebagai penghubung antara satu tabel dengan tabel lainnya. Seperti yang sudah kita bahas di awal tadi, penting bagi tabel-tabel dalam suatu relational database untuk saling terhubung antara satu dengan yang lainnya. Untuk bisa menghubungkan tabel-tabel dalam suatu relational database, kita perlu menggunakan jenis key dalam database kita. Oleh karena itu, fungsi key yang kedua ini juga tidak kalah penting nih dengan fungsinya sebagai ‘tanda pengenal’!

Jenis Key dalam Database

Jenis Key dalam database yang sebenarnya adalah atribut biasa yang dimana ditambahkan deklarasi query tertentu yang mana untuk dijadikan sebagai dari key pada tabel tersebut. Akan tetapi, sama dengan halnya yang ada di NIK dan juga NIM, atribut yang dijadikan juga harus bersifat unik yang dimana artinya antara data satu dan juga data lainnya tidak boleh harus sama. Selain dari itu juga bahwa atribut yang akan dijadikan sebuah key wajib diisi dan tidak diperbolehkan kosong.

Apakah anda juga mengetahui bahwa ada beragam jenis key dalam database? Yang dimana pada sebelumnya sudah dibahas mengenai fungsi dari key, yang dimana key tersebut digunakan sebagai tanda pengenal dan juga sebagai penghubung yang ada di dalam antar tabel. Dari kedua fungsi tersebut key ini memiliki nama yang berbeda loh, bagi anda yang masih belum mengetahui dari nama – nama key dalam database maka mari simak jenis key dalam database yang ada di bawah ini!



1.       Primary Key

Primary Key, salah satu key dalam database yang sering dijumpai

Primary key adalah suatu nilai yang ada didalam suatu basis data yang dimana digunakan untuk mengidentifikasi suatu baris yang ada di dalam tabel. Nilai yang ada didalam primary key adalah unik. Sedangkan secara sederhananya primary key dapat juga diartikan sebagai kolom yang berisi nilai unik, yang dimana memiliki fungsi sebagai identitas yang untuk membedakan setiap record yang ada didalam suatu tabel. 

Primary Key merupakan ‘tanda pengenal’ yang ditetapkan untuk suatu tabel. Primary Key ini harus merupakan atribut yang paling cocok dan paling dapat membedakan data-data yang ada di dalam tabel tersebut. Misalnya, setiap mahasiswa pasti memiliki NIM dan nomor ponsel. Kedua atribut ini pasti merupakan data yang unik, ‘kan? Tidak ada dua mahasiswa yang memiliki NIM dan nomor ponsel yang sama persis. Akan tetapi, mana atribut yang paling cocok untuk menjadi ‘tanda pengenal’ dari mahasiswa? Yup, NIM pastinya lebih cocok untuk dijadikan ‘tanda pengenal’ si mahasiswa!

Nah, dari contoh di atas, dapat kita lihat bahwa jenis key dalam database mungkin ada lebih dari satu atribut yang dapat dijadikan ‘tanda pengenal’ dari suatu tabel, karena sifatnya yang memang unik. Akan tetapi, perlu kita pertimbangkan lagi manakah atribut yang paling cocok untuk dijadikan ‘tanda pengenal’ tabel tersebut.

Seperti yang sudah dijelaskan pada sebelumnya primary key ini memiliki fungsi sebagai identitas untuk membedakan antara record yang ada pada suatu tabel. Misalnya dalam suatu database pada perusahaan terdapat 3 orang pegawai yang berbeda namun juga memiliki sama – sama memiliki nama “rio” nah bagaimana cara untuk membedakan antara ketiga data tersebut? Tentu yang harus anda gunakan adalah menggunakan kunci utama yaitu primary key. Selain itu juga relasional database primary key juga dapat digunakan sebagai penghubung antara sebuah tabel dengan tabel lainnya. Yang mana nantinya dari primary key akan mewakili masing – masing record yang ada pada tabel.

Meski penggunaan primary key ini yang dilakukan kepada setiap tabel tidak diwajibkan akan tetapi dengan adanya primary key ini juga sangat berpengaruh untuk anda jika anda melakukan query pada database anda. seperti pada saat anda melakukan pencarian atau juga pada saat melakukan pengurutan data yang dapat menjadi lebih cepat jika anda menggunakan primary key.

2.       Foreign Key

Jenis key dalam database selanjutnya adalah Foreign Key. Apabila primary key berfungsi untuk menjalankan fungsi pertama dari key dalam database, yakni sebagai ‘tanda pengenal’, maka foreign key berfungsi untuk menjalankan fungsi kedua dari key dalam database, yakni sebagai penghubung antartabel.

Sebelum mempelajari penggunaan foreign key, mari kita simak kedua tabel di bawah ini:

image
image

Dari kedua tabel di atas, kita dapat melihat bahwa ada siswa dan ada kelas dalam suatu sekolah. Akan tetapi, kita tidak bisa melihat siswa mana masuk di kelas mana. Untuk memperjelas tabel di atas, kita dapat mengetahui jenis key dalam database menghubungkan kedua tabel dengan menggunakan foreign key.

Dari tabel di atas, dapat kita ketahui bahwa primary key dari tabel siswa adalah NIS atau Nomor Induk Siswa. Sementara, primary key dari tabel kelas adalah Kode Kelas. Untuk menghubungkan kedua tabel di atas, kita cukup menambahkan Kode Kelas sebagai foreign key pada Tabel Siswa. Dengan begitu, tampilan tabel siswa secara keseluruhan akan seperti di bawah ini:

Foreign Key, salah satu key dalam database yang sering dijumpai

Perlu diingat bahwa jenis key dalam database memiliki atribut. Atribut yang akan kamu gunakan sebagai foreign key haruslah merupakan primary key pada tabel asalnya ya, teman-teman.

Secara sederhana foreign key ini dapat diartikan sebagai kunci asing. Yang dimana definisi ini juga berlaku didalam pengolahan relasional database. Kunci asing (foreign key) adalah sebuah atribut yang terdapat didalam suatu tabel yang dimana untuk digunakan untuk menciptakan hubungan  antara dua tabel.

Di dalam relational database penggunaan foreign key merujuk pada suatu kunci primer yang terdapat pada tabel pertama atau juga dikenal dengan tabel master.

Fungsi dari forign key adalah foreign key digunakan untuk menandakan hubungan tabel yang satu dengan yang lainnya. Yang dimana istilah ini dikenal sebagai parent dan child. Suatu tabel dapat dikatakan sebagai child apabila didalam suatu tabel terdapat kolom yang merupakan rujukan terhadap tabel pertama atau parent. Selain itu juga foreign key ini memiliki fungsi:

  • Dengan menggunakan kunci asing maka anda akan secara otomatis database akan konsisten dalam mempertahankan yang namanya integritas referensial. Dengan begitu maka database anda akan dapat memonitor setiap data yang akan dimasukan.
  • Ketika anda telah menetapkan kunci primer di tabel utama anda maka itu akan memudahkan anda juga dalam melihat perancangan fisik database dengan menggunakan komponen yang saling terkait.
  • Dengan membuat kolom yang digunakan sebagai foreign key maka dapat juga memudahkan anda untuk melakukan operasi pengolahan setiap data yang akan disimpan didalam database anda.

3.       Composite Key

Didalam sebuah desain database composite key ini merupakan sebuah kunci yang didalamnya terdiri dari dua atau lebih atribut. Yang dimana atribut – atribut tersebut akan secara unik akan melakukan identifikasi terhadap sebuah kejadian yang namanya entitas.

Pada saat ini banyak sekali orang – orang yang masih bingung dalam menggunakan composite key ini hal ini dikarenakan di dalam composite key ini terdiri lebih dari dua atribut yang dimana satu atributnya nanti akan membentuk yang namanya composite key yang nantinya akan menjadi kunci sederhana.

4.       Alternate Key

Jenis key dalam database selanjutnya adalah alternate key ini adalah sebuah kunci yang dimana banyak yang tidak dipilih. Yang dimana semisal ada dua kandidat yang akan menjadi sebuah dari kunci utama. Maka salah satu pasti akan ditunjuk sebagai primary keynya. Sementara kunci yang tidak dipilih maka akan dijadikan sebagai alternate key.

5.       Candidate Key

Jenis key dalam database selanjutnya adalah Candidate key ini berperan sebagai untuk mengidentifikasi adanya kejadian yang spesial pada tabel anda. pada candidate key ini juga memiliki syarat sebuah kunci yang dinamakan candidate key adalah unik identifier, serta juga candidate key ini non duplikat. Yang dimana maksudnya tidak ada kunci yang memiliki ciri khas yang sama dengan candidate key.

Komentar

Postingan populer dari blog ini

Apa Itu Normalisasi Pada ERD

Apa itu relation pada ERD?? Mengapa many-to-many tidak baik digunakan pada ERD?