Hello Sobat Teknohits! Kamu pasti sudah sering mendengar kata normalisasi dalam dunia database, kan? Normalisasi adalah proses mengorganisir data dalam basis data agar tidak terjadi redundansi dan inkonsistensi data. Nah, pada kesempatan kali ini, kita akan membahas contoh soal normalisasi dan jawabannya. Yuk, simak artikel ini sampai selesai!
Contoh Soal Normalisasi dan Jawabannya
Sebelum kita membahas contoh soal normalisasi, ada baiknya kamu memahami terlebih dahulu tentang normalisasi. Normalisasi dibagi menjadi beberapa tingkat, yaitu :
- First Normal Form (1NF)
- Second Normal Form (2NF)
- Third Normal Form (3NF)
- Fourth Normal Form (4NF)
- Fifth Normal Form (5NF)
Setiap tingkat normalisasi memiliki aturan dan ketentuan yang harus dipenuhi agar data dalam sebuah tabel bisa dikatakan sudah ternormalisasi.
Contoh Soal Normalisasi 1NF
Contoh soal normalisasi tingkat 1NF adalah sebagai berikut :
Terdapat sebuah tabel bernama ‘buku’ dengan atribut ‘kode’, ‘judul_buku’, ‘pengarang’, dan ‘kategori_buku’. Tabel tersebut memiliki data sebagai berikut :
Kode | Judul Buku | Pengarang | Kategori Buku |
---|---|---|---|
BK001 | Harry Potter dan Batu Bertuah | J.K. Rowling | Fiksi |
BK002 | Percy Jackson dan Lautan Monster | Rick Riordan | Fiksi |
BK003 | Matematika Dasar | Abdul Haris | Non-Fiksi |
Soalnya adalah ubah tabel tersebut menjadi bentuk 1NF. Jawabannya adalah dengan memecah tabel tersebut menjadi dua tabel, yaitu ‘buku’ dan ‘kategori_buku’. Tabel ‘buku’ memiliki atribut ‘kode’, ‘judul_buku’, ‘pengarang’, dan ‘id_kategori_buku’. Sedangkan tabel ‘kategori_buku’ hanya memiliki atribut ‘id_kategori_buku’ dan ‘nama_kategori_buku’.
Contoh Soal Normalisasi 2NF
Contoh soal normalisasi tingkat 2NF adalah sebagai berikut :
Terdapat sebuah tabel bernama ‘penjualan’ dengan atribut ‘id_penjualan’, ‘tgl_penjualan’, ‘kode_buku’, ‘jumlah’, ‘harga_satuan’, dan ‘total_harga’. Tabel tersebut memiliki data sebagai berikut :
Id Penjualan | Tanggal Penjualan | Kode Buku | Jumlah | Harga Satuan | Total Harga |
---|---|---|---|---|---|
001 | 2020-01-01 | BK001 | 2 | 10000 | 20000 |
002 | 2020-01-01 | BK002 | 1 | 15000 | 15000 |
003 | 2020-01-02 | BK001 | 3 | 10000 | 30000 |
Soalnya adalah ubah tabel tersebut menjadi bentuk 2NF. Jawabannya adalah dengan memecah tabel ‘penjualan’ menjadi dua tabel, yaitu ‘penjualan’ dan ‘buku’. Tabel ‘penjualan’ memiliki atribut ‘id_penjualan’, ‘tgl_penjualan’, ‘kode_buku’, ‘jumlah’, ‘harga_satuan’, dan ‘total_harga’. Sedangkan tabel ‘buku’ hanya memiliki atribut ‘kode_buku’ dan ‘judul_buku’.
Contoh Soal Normalisasi 3NF
Contoh soal normalisasi tingkat 3NF adalah sebagai berikut :
Terdapat sebuah tabel bernama ‘pegawai’ dengan atribut ‘nip’, ‘nama_pegawai’, ‘id_jabatan’, ‘nama_jabatan’, dan ‘gaji’. Tabel tersebut memiliki data sebagai berikut :
NIP | Nama Pegawai | ID Jabatan | Nama Jabatan | Gaji |
---|---|---|---|---|
001 | Andi | J1 | Manager | 7000000 |
002 | Budi | J2 | Supervisor | 5000000 |
003 | Cici | J1 | Manager | 7000000 |
Soalnya adalah ubah tabel tersebut menjadi bentuk 3NF. Jawabannya adalah dengan memecah tabel ‘pegawai’ menjadi tiga tabel, yaitu ‘pegawai’, ‘jabatan’, dan ‘gaji’. Tabel ‘pegawai’ hanya memiliki atribut ‘nip’, ‘nama_pegawai’, dan ‘id_jabatan’. Tabel ‘jabatan’ hanya memiliki atribut ‘id_jabatan’ dan ‘nama_jabatan’. Sedangkan tabel ‘gaji’ hanya memiliki atribut ‘id_jabatan’ dan ‘gaji’.
Kesimpulan
Nah, itulah contoh soal normalisasi dan jawabannya pada beberapa tingkat normalisasi. Semoga artikel ini bermanfaat untuk kamu yang sedang mempelajari normalisasi dalam database. Jangan lupa untuk selalu mempraktikkan dan menguji kemampuanmu dalam normalisasi database ya. Sampai jumpa kembali di artikel menarik lainnya!