Kumpulan Atribut Penutupan dan Menemukan Kunci Kandidat

Penutupan Set Atribut:
-> Dilambangkan dengan {}+

Contoh 1:
Misalkan suatu relasi, R(ABCDE)
FD: {AB->C, C->E, BC->E, B->AD}

Penutupan AB, {AB}+ : {A,B,C,E,D}
Penutupan C, {C}+ : {C,E}
Penutupan CE, {CE}+ : {C,E}

Contoh 2:
Misalkan suatu relasi, R(MNPXZ)
FD: {MN->PZ, PX->Z, MX->Z, P->M, N->M}

Penutupan P, {P}+ : {P,M}
Penutupan XZ, {XZ}+ : {X,Z}
Penutupan MNP, {MNP}+ : {M,N,P,Z}
Penutupan XPZ, {XPZ}+ : {X,P,Z,M}

Bagaimana Menemukan Kunci Kandidat dalam suatu Relasi?
Contoh 1:
Misalkan suatu relasi, R(ABCDE)
FD: {A->BC, B->C, D->C, AC->D}

Teks Alternatif

Jumlah tidak. dari Kemungkinan Kunci Kandidat: 2^n – 1
dimana, n = tidak. dari Atribut

Metode Jalan Pintas

Contoh 1:
Misalkan suatu relasi, R(ABCDE)
FD: {A->BC, B->C, D->C, AC->D}

Cari atribut yang tidak ada dalam LHS FD, disini A dan E. Oleh karena itu A, E adalah atribut esensial.

(AE)+ = {A,E,B,C,D} => Kunci Kandidat
(AEB)+ = {A,E,B,C,C} => Kunci Super

Contoh 2:
Misalkan suatu relasi, R(PQRST)
FD: {PQR->T, RSTP->S, P->Q, Q->T, TS->R}

Di sini P tidak berada pada LHS dari FD manapun, yaitu P tidak dapat diturunkan dari salah satu FD. Oleh karena itu merupakan Atribut penting dan akan hadir di semua Kunci Kandidat.

(P)+ = {P,Q,T} => Bukan Kunci Kandidat

Sekarang ambil kombinasi 2-atribut:
(PQ)+ = {P,Q,T} => Bukan Kunci Kandidat
(PR)+ = {P,R,Q,T} => Bukan Kunci Kandidat
(PS)+ = {P,S,Q,T,R} => Kunci Kandidat
(PT)+ = {P,T,Q} => Bukan Kunci Kandidat

Sekarang periksa kombinasi 3 atribut:
(PQR)+ = {P,Q,R,T} => Bukan Kunci Kandidat
(PQS)+ => Super Key karena PS sudah menjadi Candidate Key

Jumlah tidak. dari Kunci Kandidat yang mungkin: 2^n-1 = 2^5-1 = 32-1 = 31

Ini adalah bagaimana Kunci Kandidat dapat ditemukan.

Beri tahu saya jika Anda menikmatinya!
Terima kasih.

June 12, 2021

codeorayo

Ampuh! Ini rahasia mengembangkan aplikasi secara instan, tinggal download dan kembangkan. Gabung sekarang juga! Premium Membership [PRIVATE] https://premium.codeorayo.com

Leave a Reply

Your email address will not be published. Required fields are marked *