Sabtu, 27 Desember 2008

KETERGANTUNGAN FUNGSIONAL (Functional Dependency)

·

Diberikan sebuah tabel T berisi paling sedikit 2 buah atribut. Yaitu A dan B. kita dapat menyatakan notasi berikut ini :
A → B atribut A menentukan B
Yang berarti A secara fungsional menentukan B atau B secara fungsional tergantung pada A. jika dan hanya jika untuk setiap kumpulan baris data (row) yang ada di tabel T. pasti ada 2 baris data (row) di tabel T dengan nilai untuk A yang sama, maka nilai untuk B pasti juga sama.
Nama_kul nim Nama_mhs Indeks_nilai
Row 1 Struktur data 98001 Ali akbar A
Row 2 Struktur data 98004 Indah susanti B Row 3 Basis data 98001 Ali akbar
Row 4 Basis data 98002 Budi haryanto
Row 5 Basis data 98004 Indah susanti
Row 6 Bahasa Indonesia 98001 Ali akbar B
Row 7 Matematika 1 98002 Budi haryono C


Denagn melihat data di atas dan dengan pertimbangan intuisi kita, maka KF yang dapat kita ajukan adalah :
a. nim → nama_mhs
yang berarti bahwa atribut nama_mhs hanya tergantung pada atribut nim. Hal ini dibuktikan dari fakta : untuk setiap nilai nim yang sama, maka pasti nilai nama_mhs-nya juga sama.

b. nama_kul nim → indeks_nilai
yang berarti bahwa atribut indeks_nilai tergantung pada atribut nama_kul dan nim secara bersama-sama. Memang kita tidak dapat menunjukan fakta, bahwa untuk setiap nilai nama_kul dan nim yang sama, maka nilai indeks_nilai-nya juga sama, karena (nama_kul, nim) merupakan key (sehingga bersifat unik) untuk tabel tersebut.

Kita juga dapat mengajukan sejumlah ketidaktergantungan (non kf) dengan hanya melihat fakta yang ada, yaitu

a. nama_kul → nim
yang artinya atribut nim tidak tergantung pada atribut nama_kul. Buktinya terlihat pada row 1 dan row 2 : dengan nilai nama_kul yang sama, tapi nilai nim-nya berbeda.

b. nim → indeks_nilai
yang artinya atribut indeks_nilai tidak hanya tergantung pada atribut nim. Buktinya terlihat pada row 1 dan row 3 : dengan nilai nim yang sama, tapi nilai indeks_nilai-nya berbeda.

Kita sebenarnya tidak memerlukan kesimpulan tentang ketidak tergantungan tersebut, hanya saja,seringkali untuk mendapatkan seluruh KF dari sebuah tabel (karena bisa terdapat lebih dari satu KF di sebuah tabel), kita lebih dulu membuat daftar ketidaktergantungan yang ada.

0 komentar: