Monday, June 3, 2013

keys

atribut kunci (key)
§  Kunci (key) adalah kolom/atribut atau kombinasi kolom/atribut yang
  dapat digunakan untuk mengidentifikasi baris dalam tabel (entitas)
  secara unik.

Superkey (key) :
gugus atribut entitas yang dapat digunakan untuk mengidentifikasikan   entitas/obyek secara unik.
satu atau lebih atribut yang membedakan setiap baris secara unik.
Misal R skema relasi, dan K adalah satu atau lebih atribut dari R
dimana K Í R maka K disebut Superkey jika dan hanya jika K à R.
Catatan : Suatu skema relasi dapat memiliki lebih dari 1 superkey.
     Bila K adalah superkey maka semua atribut gabungan yang      mengandung K juga merupakan superkey

Candidate Key :
  - Superkey dengan jumlah atribut minimal
  - Superkey tanpa redundansi (tidak memuat subset superkey yang lain)
  K adalah Candidate Key dari skema relasi R jika dan hanya jika :
  K à R dan tidak terdapat a Ì K dengan a à R

Primary Key adalah candidate key yang dipilih untuk digunakan
  sebagai kunci identitas tabel secara unik (kunci indeks tabel)
  dan tidak boleh bernilai NULL.
Dasar pemilihan Candidate Key sebagai Primary Key :
§  Key tsb menjamin keunikan baris data
§  Key tsb bersifat natural atau universal (lazim dipakai sebagai acuan)
§  Key tsb mudah dan ringkas untuk dipakai sebagai acuan

Secondary Key adalah atribut (atau kombinasinya), yang digunakan
  sebagai perantara untuk mendapatkan kembali data asal.
  Biasanya dipakai pada pencarian data (data retrieval).

kita lihat latihan soal dan penyelesaiannya :

1.  Diberikan R(A,B,C,D) dengan FD : AàB, AàC, AàD
    Apakah A candidate key dari R ?

Jawab :
(4) A à A (refleksif)
Dari (1) AàB, (2) AàC, (3) AàD, dan (4) A à A
Maka A à ABCD
A à R, jadi A adalah superkey
Jika A adalah superkey dan hanya sendiri, maka A juga adalah candidate key

2.  Diberikan R(A,B,C,D) dengan FD : AàB
a.  Apakah ACD superkey dari R
b.  Apakah A candidate key dari R

Jawab :
a.  Dari (1) AàB, maka (2) ACD à BCD (augmentasi)
Dari ACD, maka (3) ACD à ACD (refleksif)
Dari (1) AàB, dan (3) ACD à ACD maka ACD à ABCD (union)
ACD à R, ACD adalah superkey

b.  A à A (refleksif)
Dari AàB, dan AàA maka A à AB (union)
A à AB ¹ A à ABCD / A à R
A bukan superkey, bukan candidate key

3.  Diberikan R(A,B,C,D,E,F) dengan FD : Cà(AB), Bà(DE), EàF, AàBC
a.  Carilah superkey dari R
b.  Carilah candidate key dari R

Jawab :
a.  Untuk mencari superkey, maka dari FD yang diketahui semua harus dibuktikan
u Untuk Cà(AB)
Dari CàAB, maka C à A dan C à B (dekomposisi)
Dari C à B, dan B à DE maka C à DE (transitif)
Dari C à DE, maka C à D dan C à E (dekomposisi)
Dari C à E, dan E à F maka C à F (transitif)
C à C (refleksif)
Dari C à A, C à B, C à DE, C à F,  C à C, maka C à ABCDEF (union)
Terbukti. C à R, C adalah superkey

u Untuk FD (2) : Bà(DE)
Dari BàDE, maka B à D dan B à E (dekomposisi)
Dari B à E, dan E à F maka B à F (transitif)
Dari B à D, B à E, dan B à F, maka B à DEF (union)
tidak terbukti. B à DEF ¹ B à R, maka B bukan superkey

u Untuk FD (3) : E à F
tidak terbukti. E à F ¹ E à R, E bukan superkey

u Untuk FD (4) : A à BC
Dari A à BC, maka A à B dan A à C (dekomposisi)
Dari A à C, diketahui bahwa C adalah superkey C à R, maka A à R (transitif)
terbukti. A à R, maka A adalah superkey

A & C adalah superkey

b.  A dan C masing-masing sendirian, maka A & C juga adalah candidate key.

4.  Diberikan R(A,B,C,D,E)  dengan FD : Aà(BC), (CD)àE, BàD, EàA
a.  Carilah superkey dari R
b.  Carilah candidate key dari R

Jawab :
a.  Semua FD dibuktikan :
u Untuk Aà(BC)
Dari AàBC, maka A à B dan A à C (dekomposisi)
Dari A à B dan B à D maka A à D (transitif)
A à A (refleksif)
Dari A à B, A à C, A à D, dan A à A, maka A à ABCD (union)
tidak terbukti. A à ABCD ¹ A à R, maka A bukan superkey

u Untuk FD (2) : (CD)àE
Dari CDàE, dan EàA maka CD à A (transitif)
Dari CD à A, dan AàBC maka CD à BC (transitif)
CD à CD (refleksif)
Dari CDàE, CD à A, CD à BC dan CD à CD, maka CD à ABCDE (union)
terbukti. CD à R, maka CD adalah superkey

u Untuk BàD
tidak terbukti. BàD ¹ BàR, maka B bukan superkey

u Untuk EàA
Dari EàA, dan AàBC maka E à BC (augmentasi)
Dari AàBC maka A à B dan A à C (dekomposisi)
Dari A à B dan BàD maka A à D (transitif)
E à E (refleksif)
Dari EàA, E à BC, A à D dan E à E, maka E à ABCDE (union)
terbukti. E à R, maka E adalah superkey

CD dan E adalah superkey

b.  ada 2 superkey yaitu CD dan E, maka E yang diambil sebagai candidate key.

5.  Diberikan R(A,B,C) dengan FD : AàB, BàC, CàA
Apakah A merupakan satu-satunya candidate key dari R

u Untuk FD (1) : AàB
Dari (1) AàB, dan (2) BàC maka (4) A à C (transitif)
(5) A à A (refleksif)
Dari (1) AàB, (4) A à C, dan (5) A à A, maka A à ABC (union)
terbukti. A à R, maka A superkey

u Untuk BàC
Dari BàC, dan CàA maka B à A (transitif)
B à B (refleksif)
Dari BàC, B à A dan B à B, maka B à ABC (union)
terbukti. B à R, maka B superkey

u Untuk CàA
Dari CàA, dan AàB maka C à B (transitif)
C à C (refleksif)
Dari CàA, C à B dan C à C, maka C à ABC (union)
FD terbukti. C à ABC = C à R, maka C superkey

A, B, dan C adalah superkey. A, B, dan C juga candidate key. A tidak satu-satunya candidate key dari R

No comments:

Post a Comment