Contoh Normalisasi Database 1NF, 2NF & 3NF

Contoh Normalisasi Database 1NF, 2NF & 3NF
Daftar Isi

Rimba Store – Normalisasi database seperti 1NF, 2NF, 3NF adalah proses pengelompokan atribut data yang membentuk entitas sederhana, nonredundant, fleksibel, dan mudah beradaptasi. Sehingga dapat dipastikan bahwa database yang dibuat berkualitas baik.

Tujuan utama dari normalisasi database adalah:

  • Menghilangkan dan mengurangi redudansi data.
  • Memastikan dependensi data (data berada pada tabel yang tepat).

Jenis Anomali yang Dapat Terjadi

Jika sebuah database belum dinormalisasi, kemungkinan terburuk yang akan merugikan sistem adalah:

  • INSERT Anomali: Situasi dimana tidak memungkinkan untuk memasukkan beberapa jenis data secara langsung di database.
  • UPDATE Anomali: Situasi dimana nilai yang diubah mengakibatkan ketidakkonsistenan database, artinya data yang diubah tidak sesuai dengan yang diinginkan.
  • DELETE Anomali: Penghapusan data tidak sesuai yang diharapkan, artinya data yang seharusnya tidak terhapus malah terhapus.

Cara dan Contoh Melakukan Normalisasi Database

Untuk melakukan normalisasi database, kita harus mengidentifikasi data seperti apa yang akan disimpan. Sebagai contoh, kita ambil contoh data struk penjualan.

Contoh Data Struk Penjualan

Kode Faktur Tanggal Nama Pelanggan Kode Barang Nama Barang Qty Harga
001 2022-01-01 John Doe 001 Barang A 2 10000
001 2022-01-01 John Doe 002 Barang B 1 5000
002 2022-01-02 Jane Doe 003 Barang C 3 20000

Normalisasi 1NF (First Normal Form)

Suatu tabel dikatakan 1NF jika dan hanya jika setiap atribut dari data tersebut hanya memiliki nilai tunggal dalam satu baris.

Kode Faktur Tanggal Nama Pelanggan Kode Barang Nama Barang Qty Harga
001 2022-01-01 John Doe 001 Barang A 2 10000
001 2022-01-01 John Doe 002 Barang B 1 5000
002 2022-01-02 Jane Doe 003 Barang C 3 20000

Normalisasi 2NF (Second Normal Form)

Syarat 2NF adalah tidak diperkenankan adanya partial “functional dependency” kepada primary key dalam sebuah tabel.

Kode Faktur Tanggal Nama Pelanggan
001 2022-01-01 John Doe
002 2022-01-02 Jane Doe
Kode Faktur Kode Barang Nama Barang Qty Harga
001 001 Barang A 2 10000
001 002 Barang B 1 5000
002 003 Barang C 3 20000

Normalisasi 3NF (Third Normal Form)

Pada 3NF tidak diperkenankan adanya partial “transitive dependency” dalam sebuah tabel.

Kode Faktur Tanggal Nama Pelanggan
001 2022-01-01 John Doe
002 2022-01-02 Jane Doe
Kode Barang Nama Barang Harga
001 Barang A 10000
002 Barang B 5000
003 Barang C 20000
Kode Faktur Kode Barang Qty Harga
001 001 2 10000
001 002 1 5000
002 003 3 20000

Kesimpulan

Dalam kesimpulan, normalisasi database adalah proses pengelompokan atribut data yang membentuk entitas sederhana, nonredundant, fleksibel, dan mudah beradaptasi. Dengan melakukan normalisasi database, kita dapat menghilangkan dan mengurangi redudansi data, memastikan dependensi data, dan menghindari anomali yang dapat terjadi.

Related Posts
Scroll to Top