Apa Itu Normalisasi
Normalisasi adalah suatu teknik yang digunakan untuk membuat kumpulan entitas yang sesuai dengan karakteristik atribut entitas sehingga terbentuk entitas yang sederhana, non redundant, fleksibel, dan mudah beradaptasi, Sehingga dapat dipastikan bahwa database yang dibuat berkualitas baik.
Ada Berapa Tahap Normalisasi Database
ada 9 Yaitu
1NF mensyaratkan bahwa setiap kolom dalam tabel harus berisi nilai atomik (tidak dapat dibagi lagi) dan setiap kolom harus berisi nilai dari jenis data yang sama. Juga, setiap baris dalam tabel harus unik. 2NF mensyaratkan tabel berada dalam 1NF dan semua atribut non-primer harus sepenuhnya bergantung pada kunci primer. Ini berarti tidak boleh ada ketergantungan parsial (hanya bagian dari kunci primer). 3NF mensyaratkan tabel berada dalam 2NF dan tidak ada atribut non-primer yang bergantung secara transitif pada kunci primer. Artinya, tidak ada kolom non-primer yang bergantung pada kolom non-primer lainnya. - BCNF (Boyce-Codd Normal Form)
BCNF adalah versi yang lebih kuat dari 3NF. Tabel berada dalam BCNF jika, untuk setiap ketergantungan fungsional A→B, A adalah superkunci.Contoh:
Jika ada tabel dengan kolom (A, B, C), dan ketergantungan fungsional A→B, maka A harus merupakan superkunci. 4NF mensyaratkan tabel berada dalam BCNF dan tidak memiliki multi-valued dependencies (ketergantungan multi-nilai). Contoh:
Jika tabel memiliki dua set atribut independen yang bisa muncul lebih dari satu kali untuk satu kunci, maka tabel harus dipecah.
5NF mensyaratkan tabel berada dalam 4NF dan tidak memiliki join dependency yang tidak bisa direpresentasikan sebagai rangkaian join lebih kecil.
Contoh:
Tabel harus dipecah menjadi tabel yang lebih kecil sedemikian rupa sehingga data asli dapat direkonstruksi kembali tanpa kehilangan informasi.
- DKNF (Domain-Key Normal Form)
DKNF adalah bentuk normal yang sangat kuat yang menyatakan bahwa tabel berada dalam bentuk normal jika setiap kendala yang berlaku pada tabel adalah implikasi dari kunci domain dan kunci atribut.Contoh:
Tidak ada contoh spesifik untuk DKNF karena ini lebih merupakan konsep teoretis yang sulit diterapkan dalam praktik.
6NF adalah bentuk normal yang mengatasi masalah yang berkaitan dengan temporal databases. Ini mengharuskan setiap tabel dalam bentuk normal memiliki hanya satu fakta dasar (atomic fact).Contoh:
Tabel dalam 6NF biasanya digunakan dalam basis data temporal yang membutuhkan pelacakan perubahan seiring waktu.
- EKNF (Elementary Key Normal Form)
EKNF adalah bentuk normal yang lebih ketat dari BCNF yang mengharuskan tidak ada anomali data bahkan jika ada ketergantungan non-kunci yang rumit.Contoh:
Seperti DKNF, EKNF lebih teoretis dan jarang diterapkan dalam desain basis data praktis.
Apa Perbedaan Normalisasi dan ERD
Normalisasi adalah proses mengorganisasi data dalam sebuah basis data untuk mengurangi redundansi dan ketergantungan data. Tujuan utama dari normalisasi adalah untuk menghindari masalah seperti anomali pembaharuan, penyisipan, dan penghapusan data.
ERD adalah diagram yang digunakan untuk menggambarkan struktur basis data dengan menunjukkan entitas (objek) yang ada dalam sistem, atribut-atribut mereka, dan hubungan antara entitas-entitas tersebut.
Secara singkat, normalisasi adalah proses untuk mengoptimalkan struktur tabel dalam basis data, sementara ERD adalah alat untuk merancang dan menggambarkan struktur basis data itu sendiri.
CONTOH 1NF DAN 2NF
Komentar
Posting Komentar