Ketergantungan fungsional (functional dependency atau FD) adalah konsep dasar dalam teori basis data relasional yang menggambarkan hubungan antara dua set atribut dalam suatu relasi. Pada dasarnya, FD menyatakan bahwa nilai satu set atribut (determinant) secara unik menentukan nilai atribut lainnya.
Misalkan R adalah suatu relasi dengan skema atribut A, A, , A. Untuk dua subset atribut X dan Y (X, Y {A,,A}), kita menulis:
X Y
Jika dan hanya jika, untuk setiap dua tuple t dan t dalam R, kondisi berikut terpenuhi:
t[X] = t[X] t[Y] = t[Y]
Artinya, bila dua baris memiliki nilai yang sama pada atributatribut X, maka mereka juga harus memiliki nilai yang sama pada atributatribut Y.
| NRP | Nama | Program Studi | Fakultas |
|---|---|---|---|
| 001 | Ani | Informatika | Teknik |
| 002 | Budi | Manajemen | Ekonomi |
| 003 | Cici | Informatika | Teknik |
Dalam tabel di atas, NRP Nama, Program Studi, Fakultas karena NRP adalah kunci unik. Selain itu, Program Studi Fakultas juga berlaku karena setiap program studi berada di satu fakultas saja.
X Y disebut trivial bila Y X. Contoh: {A, B} A selalu benar.Y tidak termasuk dalam X, misalnya A B.X Y nontrivial dan X Y = . Contoh: A B bila A dan B berbeda.(A, B), apabila A C, maka C bergantung parsial pada (A, B).A B dan B C, maka secara transitif A C. Ini penting dalam proses normalisasi.Armstrongs axioms menyediakan cara untuk menurunkan FD baru dari kumpulan FD yang ada:
Y X, maka X Y.X Y, maka XZ YZ untuk sembarang set Z.X Y dan Y Z, maka X Z.Dari tiga aksioma ini dapat diturunkan aturan tambahan seperti:
X YZ didapat X Y dan X Z.X Y dan X Z, maka X YZ.X Y dan YW Z, maka XW Z.Normalisasi adalah proses mengorganisasi tabel agar meminimalkan redundansi dan menghindari anomali pembaruan. FD adalah fondasi utama dalam menentukan bentuk normal:
Dalam praktik, FD biasanya ditentukan oleh analis bisnis, bukan otomatis dari data. Namun, beberapa teknik dapat membantu:
Misalkan sebuah toko online memiliki tabel OrderDetail dengan atribut:
OrderID, ProductID, Quantity, UnitPrice, Discount
Berikut adalah FD yang relevan:
(OrderID, ProductID) Quantity, UnitPrice, Discount (kunci komposit)ProductID UnitPrice (harga produk tetap pada satu waktu; jika harga berubah, harus ada tabel terpisah Product)Jika ProductID UnitPrice tetap berlaku, maka tabel OrderDetail mengandung redundansi karena UnitPrice dapat diturunkan dari Product. Normalisasi ke 3NF atau BCNF akan memindahkan UnitPrice ke tabel Product.
Ketergantungan fungsional adalah konsep kunci yang menjelaskan bagaimana nilai satu atribut (atau sekumpulan atribut) menentukan nilai atribut lain dalam sebuah relasi. Memahami FD memungkinkan perancang basis data:
Dengan mengaplikasikan aturan Armstrong serta prinsipprinsip normalisasi, basis data dapat dirancang secara logis, konsisten, dan mudah dipelihara.
Untuk informasi lebih lanjut, kunjungi Wikipedia Functional Dependency atau literatur klasik seperti Database System Concepts karya Silberschatz, Korth, dan Sudarshan.
