Functional Dependencies

Functional dependency (FD) atau kebergantungan fungsional adalah constraint  atau batasan/ ketentuan antara 2 buah himpunan atribut pada sebuah tabel.

Kebergantungan Fungsional

JIka A dan B adalah himpunan atribut dari tabel T, kebergantungan fungsional antara A dan B biasanya dinyatakan dalam notasi notasi A -> B. Notasi A -> B berarti:

  • A menentukan B
  • B secara fungsional bergantung kepada A.

A -> B jika memenuhi syarat berikut ini :

Pada sebuah tabel T, jika ada dua baris data atau lebih dengan nilai atribut A yang sama maka baris-baris data tersebut pasti akan memiliki nilai atribut B yang sama Namun hal ini tidak berlaku sebaliknya.

Untuk lebih jelasnya perhatikan tabel berikut ini:

NIM Nama_Mhs Kd_Jur Nama_Jur Kode_MK Nama_MK SKS Nilai
1-01 Tukimin TE Elektro TE-001 Elektronika 3 A
1-01 Tukimin TE Elektro DU-001 English 2 A
2-01 Jamilah IF Informatika IF-001 Algoritma 3 B
2-01 Jamilah IF Informatika DU-001 English 2 C
2-02 Maemunah IF Informatika IF-002 Database 2 A

Contoh kebergantungan fungsional

  • NIM -> Nama_mhs
    Untuk setiap baris data, jika NIM = 1-01 pasti Nama_mhs = ‘Tukimin’, walaupun belum tentu semua mahasiswa yang bernama Tukimin memiliki NIM = 1-01
  • NIM -> Kd_jur
    Untuk setiap baris data, jika NIM = 1-01 pasti Kd_jur = ‘TE’, walaupun tidak semua baris data dengan kd_jur ‘TE’ memiliki kolom NIM bernilai 1-01
  • NIM -> Nama_Jur
    Untuk setiap baris data dengan kolom NIM bernilai 1-01 pasti memiliki kolom Nama_Jur = ‘Elektro’, walaupun tidak semua orang di jurusan Elektro memiliki NIM = 1-01. Demikian pula tidak semua baris data pada tabel dengan kolom Nama_Jur = ‘Elektro’ memiliki kolom NIM = 1-01

Penulisan Kebergantungan Fungsional

Penulisan kebergantungan fungsional dari 3 poin di atas dapat diringkas menjadi (NIM) -> (nama_mhs, kd_jur, nama_jur)

Dengan demikian, dari tabel tersebut dapat kita simpulkan beberapa kebergantungan fungsional (FD) sebagai berikut:

  • FD1: (nim) -> (nama_mhs, kd_jur, nama_jur)
  • FD2: (kd_jur) -> (nama_jur)
  • FD3: (kode_mk) -> (nama_mk, sks)
  • FD4: (nim,kode_mk) -> (nilai)

Jenis Kebergantungan Fungsional

Ada beberapa jenis kebergantungan fungsional, di antaranya yaitu:

  1. Partial Functional dependency
  2. Transitive Functional dependency
  3. Multivalued Functional dependency

Ketiganya adalah konsep penting dalam normalisasi.

Leave a Reply

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

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>