Belajar Database Lengkap – Bagian #2 (Normalisasi Database)

Konsep Normalisasi Database

🔹 Apa itu Normalisasi?

Normalisasi adalah proses menyusun struktur tabel agar data:
✔ tidak duplikat
✔ lebih rapi
✔ mudah dikelola
✔ konsisten


🔹 Kenapa Normalisasi Penting?

Tanpa normalisasi:
❌ data ganda
❌ update ribet
❌ rawan kesalahan
❌ database tidak efisien


Studi Kasus Sebelum Normalisasi

❌ Tabel Belum Normal (Tidak Efisien)

Tabel: transaksi

| id | nama_siswa | kelas | mapel | guru |
|----|------------|-------|-------|------|
| 1  | Andi       | X RPL | Mat   | Pak A|
| 2  | Andi       | X RPL | IPA   | Bu B |

⚠ Masalah:

  • Nama siswa diulang
  • Nama kelas diulang
  • Data guru berulang

Normalisasi Tahap 1 (1NF – First Normal Form)

Aturan 1NF:

✔ Tidak ada data ganda dalam satu kolom
✔ Setiap field bernilai tunggal

📌 Data sudah 1 nilai per kolom → lolos 1NF


Normalisasi Tahap 2 (2NF – Second Normal Form)

Aturan 2NF:

✔ Sudah 1NF
✔ Tidak ada ketergantungan parsial

🔧 Solusi:

Pisahkan data ke tabel berbeda


✅ Tabel siswa

| id_siswa | nama_siswa | kelas |

✅ Tabel mapel

| id_mapel | nama_mapel | guru |

✅ Tabel nilai

| id_nilai | id_siswa | id_mapel |

Normalisasi Tahap 3 (3NF – Third Normal Form)

Aturan 3NF:

✔ Sudah 2NF
✔ Tidak ada ketergantungan transitif


Pisahkan lagi data kelas & guru

✅ Tabel kelas

| id_kelas | nama_kelas |

✅ Tabel guru

| id_guru | nama_guru |

✅ Tabel mapel

| id_mapel | nama_mapel | id_guru |

✅ Tabel siswa

| id_siswa | nama_siswa | id_kelas |

Hasil Akhir Database (Sudah Normal)

Relasi Antar Tabel:

kelas ──< siswa ──< nilai >── mapel ──> guru

📌 Manfaat:
✔ Data tidak duplikat
✔ Mudah update
✔ Lebih profesional
✔ Siap dipakai aplikasi


Transisi ke Praktek Query Database

Setelah normalisasi:
➡ Struktur database sudah benar
➡ Siap dibuat dengan SQL

Langkah Selanjutnya:

  1. CREATE DATABASE
  2. CREATE TABLE (DDL)
  3. INSERT DATA (DML)
  4. RELASI & FOREIGN KEY
  5. JOIN TABLE

📌 Inilah kenapa normalisasi selalu dilakukan sebelum menulis query

Tags :

Leave a Reply

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

two × three =

Tutorial Terpopuler

Tutorial Pilihan

Tentang Gurututorku

Gurututorku adalah sebuah kursus online maupun offline yang menyediakan berbagai macam tutorial tentang pemrograman, design, dan multimedia serta artikel teknologi yang tentunya bisa dinikmati dan dipelajari oleh semua orang yang baru ingin belajar dunia IT.

© 2024 – Gurututorku.com | Learning today success tomorrow.