Konsep Ketergantungan Fungsional, Ketergantungan Transitif, Normalisasi, dan Identifikasi Primary Key dalam Perancangan Sistem Database

Dalam posting tulisan tentang: “Tujuan dan Manfaat Normalisasi dalam Perancangan Database”, kita sudah mempelajari tentang: “Apa itu normalisasi” dan “Mengapa kita perlu melakukan normalisasi”. Kedua pertanyaan itu sudah terjawab dalam tulisan tersebut. Dalam posting tulisan ini, kita akan mempelajari bagaimana melakukan proses normalisasi dalam perancangan sistem basis data. Sebelum melakukan proses normalisasi kita perlu mempelajari dan memahami suatu konsep penting yang mendasari proses normalisasi, yaitu ketergantungan fungsional (functional dependecies) dan  ketergantungan transitif (transitive dependencies) antar atribut dalam suatu relasi. [Baca juga: Contoh proses normalisasi relasi dari UNF – 1NF – 2NF – dan 3NF]

Memahami Functional Dependency (Ketergantungan Fungsional) Antar Atribut dalam Suatu Relasi 

Konsep penting yang menjadi dasar melakukan normalisasi relasi-relasi dalam perancangan sistem database adalah functional dependency atau ketergantungan fungsional. Tanpa memahami konsep functional dependency atau ketergantungan fungsional kita tidak bisa melakukan proses normalisasi dengan baik dan benar. Functional dependency atau ketergantungan fungsional adalah suatu konsep yang menjelaskan tentang relationship/asosiasi/hubungan antara atribut-atribut dalam suatu relasi. 

Misalnya, jika A dan B adalah kumpulan atribut (bisa satu atau lebih atribut) dalam suatu relasi R, maka B disebut bergantung secara fungsional (functionally dependent) pada A (dituliskan dengan     A --> B), apabila setiap nilai A terasosiasi tepat dengan satu nilai dari B (ingat, A dan B adalah atribut-atribut di dalam relasi R). Representasi dalam bentuk diagramnya adalah seperti berikut:

Representasi dalam bentuk diagram, atribut-atribut B bergantung pada atribut-atribut A (A menentukan B)