Partial Functional Dependency
Partial Functional dependency atau kebergantungan fungsional parsial terjadi bila:
- B -> A
- B adalah bagian dari candidate key
Dengan kata lain jika (B,C) adalah candidate key dan B à A maka A bergantung secara parsial terhadap (B,C) atau (B,C) menentukan A secara parsial.
Untuk lebih jelasnya perhatikan tabel berikut ini:
NIM | Nama_Mhs | Kode_MK | Nilai |
1-01 | Tukimin | TE-001 | A |
1-01 | Tukimin | DU-001 | A |
2-01 | Jamilah | IF-001 | B |
2-01 | Jamilah | DU-001 | C |
2-02 | Maemunah | IF-002 | A |
Pada tabel di atas perhatikan bahwa:
- Super key : (nim,kode_mk), (nim,nama_mhs,kode_mk) dan (nim,nama_mhs,kode_mk,nilai)
- Dari super key yang sudah diperoleh pada poin 1, maka dipilih super key yang akan menjadi candidate key yaitu (nim,kode_mk)
- FD: (nim) à (nama_mhs)
Dari analisis poin 2 dan 3 maka dapat disimpulkan bahwa terjadi kebergantungan fungsional parsial dimana (nama_mhs) bergantung kepada (nim,kode_mk) secara parsial atau dapat juga dikatakan bahwa (nim,kode_mk) menentukan (nama_mhs) secara parsial.
Transitive Functional Dependency
Transitive Functional dependency atau kebergantungan fungsional transitif terjadi jika:
- A -> B
- B -> C
Jika A -> B dan B -> C maka A -> C. Dengan kata lain A bergantung secara transitif terhadap C melalui B atau A menentukan C secara transitif melalui B.
Untuk lebih jelasnya perhatikan contoh tabel berikut ini:
NIM | Nama_Mhs | Kd_Jur | Nama_Jur |
1-01 | Tukimin | TE | Elektro |
1-01 | Tukimin | TE | Elektro |
2-01 | Jamilah | IF | Informatika |
2-01 | Jamilah | IF | Informatika |
2-02 | Maemunah | IF | Informatika |
FD1: (nim) -> (nama_mhs, kd_jur, nama_jur)
FD2: (kd_jur) -> (nama_jur)
Dengan demikian dapat disimpulkan bahwa (nama_jur) bergantung secara transitif terhadap (nim) melalui (kd_jur) atau dapat juga dikatakan bahwa (nim) à (nama_jur) secara transitif melalui (kd_jur).