Contoh Soal dan Jawaban Normalisasi Database Lengkap dengan Pembahasan 1NF, 2NF, dan 3NF

Normalisasi database merupakan konsep fundamental dalam perancangan basis data relasional. Bagi mahasiswa teknik informatika, sistem informasi, maupun praktisi database, memahami normalisasi hingga bentuk normal ketiga sangat penting untuk menghindari redundansi dan inkonsistensi data. Artikel ini membahas contoh soal dan jawaban normalisasi database lengkap dengan pembahasan 1NF, 2NF, dan 3NF secara sistematis dan mudah dipahami.

Pengertian Normalisasi Database

Normalisasi adalah proses pengorganisasian data dalam database untuk mengurangi redundansi dan meningkatkan integritas data. Proses ini dilakukan dengan membagi tabel besar menjadi beberapa tabel yang lebih kecil dan saling berelasi menggunakan primary key dan foreign key.

baca juga:50+ Contoh Soal UN SMP 2025 Terbaru untuk Latihan Siswa Kelas 9

baca juga:CoE Literation Universitas Teknokrat Indonesia, Kampus Terbaik di Lampung, Gelar Pelatihan Menulis Kreatif Berbasis AI di SMAN 9 Bandar Lampung

🔖 Baca juga:
Contoh Soal Trihibrid Lengkap dengan Penyelesaian dan Pembahasan

Tujuan utama normalisasi adalah:

Menghilangkan data ganda
Mengurangi anomali insert, update, dan delete
Meningkatkan konsistensi data
Membuat struktur database lebih efisien

Dalam praktiknya, normalisasi dilakukan melalui beberapa tahapan yang disebut normal form, yaitu 1NF, 2NF, 3NF, dan seterusnya. Pada artikel ini fokus pada tiga bentuk normal pertama.

Penjelasan 1NF First Normal Form

Sebuah tabel dikatakan memenuhi 1NF jika:

Setiap kolom berisi nilai atomik atau tidak dapat dibagi lagi
Tidak ada atribut multivalue dalam satu kolom
Setiap baris bersifat unik

Contoh Soal Normalisasi 1NF

Diketahui tabel berikut:

Tabel Mahasiswa_KRS

NIM
Nama
MataKuliah
Dosen

Data:

101 | Andi | Basis Data, Algoritma | Pak Budi, Bu Sari
102 | Sinta | Basis Data | Pak Budi

Permasalahan:

Kolom MataKuliah dan Dosen mengandung lebih dari satu nilai dalam satu sel sehingga belum memenuhi 1NF.

Jawaban dan Pembahasan 1NF

Untuk memenuhi 1NF, setiap kolom harus bernilai tunggal. Maka tabel dipecah menjadi:

101 | Andi | Basis Data | Pak Budi
101 | Andi | Algoritma | Bu Sari
102 | Sinta | Basis Data | Pak Budi

Sekarang setiap kolom berisi nilai atomik sehingga memenuhi 1NF.

Penjelasan 2NF Second Normal Form

Sebuah tabel memenuhi 2NF jika:

Sudah memenuhi 1NF
Tidak ada ketergantungan parsial terhadap primary key

Ketergantungan parsial terjadi jika atribut non key hanya bergantung pada sebagian dari primary key komposit.

Contoh Soal Normalisasi 2NF

Tabel Nilai_Mahasiswa

NIM
KodeMK
NamaMahasiswa
NamaMK
Nilai

Primary key: NIM dan KodeMK

Masalah:

NamaMahasiswa hanya bergantung pada NIM
NamaMK hanya bergantung pada KodeMK

Artinya terdapat ketergantungan parsial.

Jawaban dan Pembahasan 2NF

Pisahkan menjadi tiga tabel:

Tabel Mahasiswa
NIM
NamaMahasiswa

Tabel MataKuliah
KodeMK
NamaMK

Tabel Nilai
NIM
KodeMK
Nilai

Dengan pemisahan ini, setiap atribut non key bergantung sepenuhnya pada primary key masing masing tabel sehingga memenuhi 2NF.

Penjelasan 3NF Third Normal Form

Sebuah tabel memenuhi 3NF jika:

Sudah memenuhi 2NF
Tidak ada ketergantungan transitif

Ketergantungan transitif terjadi jika atribut non key bergantung pada atribut non key lainnya.

Contoh Soal Normalisasi 3NF

Tabel Pegawai

IDPegawai
NamaPegawai
KodeDepartemen
NamaDepartemen

Primary key: IDPegawai

Masalah:

NamaDepartemen bergantung pada KodeDepartemen, bukan langsung pada IDPegawai. Ini disebut ketergantungan transitif.

Jawaban dan Pembahasan 3NF

Pisahkan menjadi dua tabel:

Tabel Pegawai
IDPegawai
NamaPegawai
KodeDepartemen

Tabel Departemen
KodeDepartemen
NamaDepartemen

Sekarang tidak ada ketergantungan transitif sehingga tabel memenuhi 3NF.

Contoh Soal Lengkap Normalisasi 1NF sampai 3NF

Soal

Diketahui tabel berikut:

Transaksi

NoTransaksi
Tanggal
IDPelanggan
NamaPelanggan
Alamat
KodeBarang
NamaBarang
Harga
Jumlah

Satu transaksi dapat memiliki beberapa barang.

Langkah 1 Menuju 1NF

Pisahkan setiap barang menjadi baris berbeda sehingga setiap kolom bernilai atomik.

NoTransaksi | Tanggal | IDPelanggan | NamaPelanggan | Alamat | KodeBarang | NamaBarang | Harga | Jumlah

Sekarang data sudah memenuhi 1NF.

Langkah 2 Menuju 2NF

Primary key komposit adalah NoTransaksi dan KodeBarang.

Masalah:

NamaPelanggan dan Alamat bergantung hanya pada IDPelanggan
NamaBarang dan Harga bergantung hanya pada KodeBarang

Pisahkan menjadi:

Tabel Pelanggan
IDPelanggan
NamaPelanggan
Alamat

Tabel Barang
KodeBarang
NamaBarang
Harga

Tabel Transaksi
NoTransaksi
Tanggal
IDPelanggan

Tabel DetailTransaksi
NoTransaksi
KodeBarang
Jumlah

Sekarang memenuhi 2NF.

Langkah 3 Menuju 3NF

Periksa apakah ada ketergantungan transitif. Jika tidak ada atribut non key yang bergantung pada atribut non key lain, maka sudah memenuhi 3NF.

Struktur di atas sudah memenuhi 3NF karena setiap atribut non key bergantung langsung pada primary key masing masing tabel.

Manfaat Normalisasi Database

Mengurangi redundansi data
Mencegah inkonsistensi saat update
Menghindari anomali penghapusan
Meningkatkan efisiensi penyimpanan
Mempermudah pengelolaan relasi

Kesalahan Umum dalam Normalisasi

Tidak menentukan primary key dengan benar
Mengabaikan ketergantungan parsial
Tidak memeriksa ketergantungan transitif
Terlalu cepat memecah tabel tanpa analisis

Tips Mengerjakan Soal Normalisasi

Identifikasi primary key terlebih dahulu
Periksa nilai atomik untuk 1NF
Cek ketergantungan parsial untuk 2NF
Cek ketergantungan transitif untuk 3NF
Gunakan diagram relasi untuk membantu visualisasi

Kesimpulan

Memahami contoh soal dan jawaban normalisasi database lengkap dengan pembahasan 1NF, 2NF, dan 3NF sangat penting dalam perancangan sistem basis data relasional. Proses normalisasi membantu mengurangi redundansi, meningkatkan integritas data, dan mencegah anomali dalam operasi database.

penulis:ilham

Post Comment