Blog Catatan Q, berbagi infomasi, berbagi ilmu

Jenis-Jenis Kunci Dalam Relation Database

Jenis-Jenis Kunci Dalam Relation Database

Menurut para ahli, kunci (key) hanya memiliki satu makna dalam teori relasional itu adalah kumpulan dari satu atau lebih kolom yang nilai-nilai gabungan unik di antara semua kejadian dalam tabel tertentu. Utama adalah sarana relasional menetapkan keunikan. Kunci adalah satu atau lebih atribut yang menentukan atribut lainnya atau antara atribut lain saling berkaitan. Dalam metode relasional, ada 6 kunci yang di kenal yang akan di jelas sebagai berikut. 

1. Candidat key. 

Candidate Key (kunci calon) adalah salah satu rangkaian yang mempunyai nilai unik untuk membedakan atau mengidentifikasi nilai-nilai kombinasi yang unik diantara semua kejadian yang spesifik dari entetitas. Candidat key ini tidak boleh berisi atribut dari tabel yang lain. kombinasi dari atribut yang dapat digunakan untuk mengidentifikasi secara unik rekor database tanpa data apapun yang asing. Setiap tabel dapat memiliki satu atau lebih candidate key.
Contoh: 
File pegawai berisi attribute 
  • no induk 
  • No ktp 
  • Nama 
  • Tempat lahir 
  • Tanggal lahir 
  • Alamat 
  • Kota 
Kunci kandidat disini adalah: 
  • No induk 
  • No ktp 

2. Primary Key (kunci utama)

Primary Key (kunci utama) adalah atribut Merupakan candidate key yang telah dipilih untuk mengidentifikasi setiap record secara unik. Primary key harus merupakan field yang benar-benar unik dan tidak boleh ada nilai NULL. Pengertian lainya Primary Key adalah suatu nilai dalam basis data yang digunakan untuk mengidentifikasi suatu baris dalam table. Primary key, salah satu atrribut dari candidat key dapat dipilih menjadi primary key dengan 3 kriteria sbb : 
  • Key tersebut lebih natural untuk dijadikan acuan
  • Key tersebut lebih sederhana 
  • Key tersebut cukup uniqe database tanpa data apapun yang asing. 
Setiap tabel dapat memiliki satu atau lebih candidate key. C
ontoh: File pegawai berisi attribute 
  • no induk 
  • No ktp 
  • Nama 
  • Tempat lahir 
  • Tanggal lahir 
  • Alama
  • Kota 
No induk dan no ktp adalah kunci calon (Candidate Key) dan untuk kunci utama (primary key) adalah salah satu yang dipilih dari kunci calon. Misalnya No. induk di jadikan primary key, maka primary key nya adalah no induk. 

3. Alternate Key (Kunci Alternatif) 

Alternate key Adalah candidate key yang tidak terpilih. Misal : dalam suatu entity terdapat dua field yang bisa dijadikan sebagai kunci. Sementara yang boleh dijadikan kunci hanya satu, maka anda harus memilih salah satu. Field yang anda pilih, disebut primary key, sedangkan field yang tidak dipilih disebut dengan alternate key. 
Contoh: File pegawai berisi attribute 
  • no induk 
  • No ktp 
  • Nama 
  • Tempat lahir 
  • Tanggal lahir 
  • Alamat
  • Kota 
No induk dan no ktp adalah kunci calon (Candidate Key) dan untuk kunci utama (primary key) adalah salah satu yang dipilih dari kunci calon. Misalnya No. induk di jadikan primary key, maka primary key nya adalah no induk. Dan untuk no ktp menjadi alternate key. 

4. Foreign Key (kunci Tamu) 

Jika sebuah primary key terhubungan ke table/entity lain, maka keberadaan primary key pada entity tersebut di sebut sebagai foreign key. Foreign key adalah Sebuah kumpulan field dalam satu relasi yang digunakan untuk me“refer” (menunjuk) ke suatu baris (tuple) pada relasi yang lain (harus berkorespondensi dengan primary key pada relasi yang kedua), seperti: ‘logical pointer’. Sedangkan hubungan antara keduanya (primary key dan foreign key) di jelaskan sebagai berikut,“Primary Key” adalah field kunci / utama dari suatu tabel yang menunjukkan bahwa field yang menjadi kunci tersebut tidak bisa diisi dengan data yang sama, atau dengan kata lain Primary key menjadikan tiap record memiliki identitas sendiri-sendiri yang membedakan satu sama lainnya (unik).“Foreign key” adalah satu attribute yang melengkapi satu relationship yang menunjukan ke induknya, dengan kata lain keduanya saling berkaitan. Perhatikan gambar berikut.
Jenis-Jenis Kunci Dalam Dalam Relation Database

Pada gambar diatas, nim pada table mhs adalah primary key. Sedangkan primary key pada table matkul adalah id_matkul. Lalu id_matkul menempel pada table mhs yang kita sebut sebagai foreign key. Biasanya saya menyebut table yang berisi foreign key sebagai table anak karena table tersebut mengait pada table lain. Sedangkan table yang terkait saya sebut sebagai table induk. Pada contoh table di atas, mhs sebagai table anak sedangkan matkul sebagai table induk 

5. Composite key 

Dalam desain database, composite key adalah kunci yang terdiri dari 2 atau lebih atribut yang secara unik mengidentifikasi suatu kejadian entitas. Setiap atribut yang membentuk kunci senyawa adalah kunci sederhana dalam haknya sendiri. Hal ini sering bingung dengan kunci composite, meskipun ini juga merupakan kunci yang terdiri dari 2 atau lebih atribut yang secara unik mengidentifikasi suatu kejadian, setidaknya satu atribut yang membentuk kunci komposit bukanlah kunci sederhana. Contohnya, suatu entitas yang mewakili masing-masing modul siswa hadir di Universitas. entitas ini memiliki nim dan kode_matakuliah sebagai kunci utama. Setiap atribut yang membentuk kunci utama adalah kunci sederhana karena masing-masing merupakan referensi unik ketika mengidentifikasi siswa dalam satu kasus dan modul yang lain. Sebaliknya, dengan menggunakan contoh yang sama, bayangkan kita mengidentifikasi seorang mahasiswa oleh NamaBelakang + NamaDepan mereka. Di tabel siswa tersebut pada modul kunci utama yaitu NamaDepan + NamaBelakang + kode_matakuliah. Karena NamaBelakang + NamaDepan merupakan referensi unik untuk mahasiswa, itu bukanlah sebuah kunci sederhana, itu adalah kombinasi dari atribut yang digunakan untuk secara unik mengidentifikasi seorang mahasiswa. Oleh karena itu kunci utama untuk entitas ini adalah kunci komposit. Tidak ada pembatasan diterapkan pada atribut tentang (awal) kepemilikan mereka dalam model data. Ini berarti bahwa setiap satu, tidak ada, atau semua, dari beberapa atribut dalam kunci senyawa dapat menjadi kunci asing. Memang, kunci asing mungkin sendiri menjadi kunci majemuk. 

 6. Sekunder key 

Sekunder key adalah sebuah atribut atau kombinasi yang digunakan hanya untuk tujuan pengambilan data.


share this article to: Facebook Twitter Google+ Linkedin Digg