Jenis-jenis Atribut Kunci (Key Field) dalam Basis Data
Pengertian Atribut (Field/Kolom)
Atribut identik dengan istilah “kolom data” tetapi dapat menunjukkan fungsinya sebagai pembentuk karakteristik (sifat-sifat) yang melekat dalam sebuah tabel.Pada penerapan aturan normalisasi, bisa berdampak pada penghilangan atau penambahan kolom tertentu, atau bahkan dapat memebentuk suatu tabel baru.
contoh basis data
Contoh :
- Tabel kelompokfilm memiliki 2 atribut, yaitu : jenis dan harga_sewa
- Tabel film memiliki 5 atribut, yaitu : kode_film, jenis, judul, jml_keping, jml_film
- Atribut kunci dan Atribut Deskriptif
- Atribut Sederhana ( Simple Attribute ) dan Atribut Komposit ( Composite Attribute )
- Atribut Bernilai Tunggal ( Single-Valued Attribute ) dan Atribut Bernilai Banyak ( Multi-Valued Attribute )
- Atribut Harus Bernilai ( Mandatory Attribute ) dan Atribut Nilai Null ( Null Value Attribute)
- Atribut Turunan ( Derrived Attribute )
Atribut Kunci adalah satu atau gabungan dari beberapa atribut yang dapat membedakan semua baris data dalam tabel secara unik. Dikatakan unik jika pada atribut yang dijadikan kunci tidak boleh ada baris data dengan nilai yang sama.
Dalam metode relasional, ada 6 kunci yaitu :
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. Kunici calon 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 kunci calon.
Contoh:
Tabel pegawai berisi atribut
- nip
- no_ktp
- nama
- tempat_lahir
- tanggal_lahir
- alamat
- Kota
Kunci Calon disini adalah:
- nip
- no_ktp
Kunci utama adalah atribut merupakan kunci calon yang telah dipilih untuk mengidentifikasi setiap record secara unik. Kunci utama harus merupakan atribut yang benar-benar unik dan tidak boleh ada nilai NULL. Kunci utama adalah suatu nilai dalam basis data yang digunakan untuk mengidentifikasi suatu baris dalam table. Salah satu dari kunci calon dapat dipilih menjadi kunci utama dengan 3 kriteria sbb:
- Kunci tersebut lebih natural untuk dijadikan acuan
- Kunci tersebut lebih sederhana
- Kunci tersebut cukup unik
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.
Kunci Alternatif (Alternate Key)
Kunci Alternatif adalah kunci alternatif yang tidak terpilih. Misal : dalam suatu entitas terdapat dua atribut yang bisa dijadikan sebagai kunci. Sementara yang boleh dijadikan kunci hanya satu, maka anda harus memilih salah satu. Atribut yang dipilih, disebut kunci utama. sedangkan atribut yang tidak dipilih disebut dengan kunci .
Contoh:
- Tabel pegawai berisi atribut
- nip
- no_ktp
- nama
- tempat_lahir
- tanggal_lahir
- alamat
- kota
nip dan no_ktp adalah kunci calon dan untuk kunci utama adalah salah satu yang dipilih dari kunci calon. Misalnya nip di jadikan kunci utama, maka no_ktp otomatis menjadi kunci alternatif.
Jika sebuah kunci utama terhubungan ke tebel lain, maka keberadaan kunci utama pada tersbut di sebut sebagai kunci tamu. Kunci tamu adalah Sebuah kumpulan atribut dalam satu relasi yang digunakan untuk me“refer” (menunjuk) ke suatu baris (tuple) pada relasi yang lain (harus berkorespondensi dengan kunci utama pada relasi yang kedua), seperti: ‘logical pointer’.
Sedangkan hubungan antara keduanya (kunci utama dan kunci tamu) di jelaskan sebagai berikut:
- Kunci utama adalah atribut kunci dari suatu tabel yang menunjukkan bahwa atribut tersebut tidak bisa diisi dengan data yang sama, atau dengan kata lain kunci utama menjadikan setiap record memiliki identitas sendiri-sendiri yang membedakan satu sama lainnya (unik).
- Kunci tamu adalah atribut yang melengkapi satu relationship yang menunjukan ke induknya, dengan kata lain keduanya saling berkaitan.
Kunci Utama & Kunci Tamu
Perhatikan gambar diatas, atribut jenis pada tabel kelompokfilm adalah kunci utama karena bersifat unik. Pada tabel film juga terdapat atribut jenis disebut sebagai kunci tamu karena digunakan me”refer” dengan atribut jenis yang terdapat pada tabel kelompok film.
Biasanya table yang berisi atribut kunci primer yang di”refer” oleh tabel lain sering disebut table induk. Contohnya pada gambar diatas, tabel kelompokfilm merupakan tabel induk bagi tabel film. Sedangkan tabel yang mengandung kunci tamu yang merefer tabel lain disebut sebagaia tabel anak. Dalam contoh diatas maka tabel film merupakan tebel anak bagi tabel kelompokfilm.
Kunci Komposit (Composite key)
Dalam desain basisdata, kunci komposit 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 gabungan, 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.
Sebagai contoh pada tabel detailmenyewa dapat kita ketahui bahwa baik atributkode_sewa maupun kode_film tidaklah bersifat unik karena merupakan kunci tamu dari tabelmenyewa dan tabel film. Namun jika digambungkan (dikompositkan), yaitu kode_sewa +kode_film, maka diperoleh atribut komposit yang bersifat unik dimana tidak ada kode_sewayang sekaligus memiliki kode_film yang sama.
Kunci sekunder adalah sebuah atribut atau kombinasi yang digunakan hanya untuk tujuan pengambilan data.
Contoh pada tabel customer adalah atribut alamat, dimana dapat diuraikan lagi menjadi alamat, kota dan kode_pos.
Atribut bernilai tunggal adalah atribut-atribut yang memiliki paling banyak satu nilai untuk setiap baris data. Contoh : Bila seorang mahasiswa memiliki 2 tempat tinggal, maka hanya 1 saja yang boleh diisikan ke atribut alamat_mhs.
Contoh : no_identitas dan nama_customer harus ada nilainya dalam tabel customer.
0 komentar:
Posting Komentar