Apa itu normalisasi dalam database ?

 


   Sumber : https://aantamim.id/normalisasi-database/


     Normalisasi database adalah proses pengelompokan atribut data yang membentuk entitas sederhana, nonredundant, fleksibel, dan mudah beradaptasi. Sehingga dapat dipastikan bahwa database yang dibuat berkualitas baik.


Tujuan Normalisasi Database.

Tujuan utama dari normalisasi database adalah:

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


2NF

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

Apa itu “functional dependency”?

Functional dependency adalah setiap atribut yang bukan kunci (non key) bergantung secara fungsional terhadap primary key.

Masih bingung?

Intinya adalah pada tahap normalisasi 2NF ini tabel tersebut harus dipecah berdasarkan primary key. Sehingga bentuk normalisasi 2NF dari tabel tersebut adalah sebagai berikut:

Contoh 1 : 


Contoh 2 : 





3NF

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


Apa itu “transitive dependency”? Transitive dependency biasanya terjadi pada tabel hasil relasi, atau kondisi dimana terdapat tiga atribut A, B, C. Kondisinya adalah A ⇒ B dan B ⇒ C. Maka C dikatakan sebagai transitive dependency terhadap A melalui B.

Masih bingung?

Intinya pada 3NF ini, jika terdapat suatu atribut yang tidak bergantung pada primary key tapi bergantung pada field yang lain maka atribut-atribut tersebut perlu dipisah ke tabel baru.

Contohnya ada pada atribut qty, kolom tersebut tidak bergantung langsung pada primary key kode_faktur melainkan bergantung pada kolom kode_barang. Jadisetelah dinormalisasi 3NF akan menghasilkan tabel berikut: 





Komentar