100% menganggap dokumen ini bermanfaat (1 suara)
3K tayangan4 halaman

Normalisasi Database 1NF, 2NF Dan 3NF

Dokumen tersebut membahas tentang normalisasi database untuk menghilangkan redundansi data dan memastikan dependensi data berada pada tabel yang tepat. Normalisasi dilakukan dalam tiga tahap yaitu 1NF, 2NF, dan 3NF. Pada 1NF, setiap atribut hanya boleh memiliki satu nilai per baris. Pada 2NF, tidak boleh ada dependensi parsial terhadap kunci primer. Sedangkan pada 3NF, tidak diperkenankan adanya dependensi transitif.

Diunggah oleh

Mila Dwi Setiarini
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai DOCX, PDF, TXT atau baca online di Scribd
100% menganggap dokumen ini bermanfaat (1 suara)
3K tayangan4 halaman

Normalisasi Database 1NF, 2NF Dan 3NF

Dokumen tersebut membahas tentang normalisasi database untuk menghilangkan redundansi data dan memastikan dependensi data berada pada tabel yang tepat. Normalisasi dilakukan dalam tiga tahap yaitu 1NF, 2NF, dan 3NF. Pada 1NF, setiap atribut hanya boleh memiliki satu nilai per baris. Pada 2NF, tidak boleh ada dependensi parsial terhadap kunci primer. Sedangkan pada 3NF, tidak diperkenankan adanya dependensi transitif.

Diunggah oleh

Mila Dwi Setiarini
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai DOCX, PDF, TXT atau baca online di Scribd

Normalisasi Database 1NF, 2NF & 3NF (Cara dan

Contoh)
1. Pengertian 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.

2. Tujuan Normalisasi Database

o Menghilangkan dan mengurangi redudansi data.


o Memastikan dependensi data (data berada pada tabel yang tepat).

Jika sebuah database belum dinormalisasi, kemungkinan terburuk yang akan


merugikan sistem adalah:

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

Tidak semua database bisa dinormalisasi, hanya tipe “relational database“ yang bisa
dinormalisasi. Banyak vendor DBMS (Database Management System) diantaranya
Oracle, MySQL, SQL Server, PostgreSQL, dll.

3. Cara Melakukan Normalisasi Database

Contoh kasus dan data yang akan di normalisasi :

o 1NF
Suatu tabel dikatakan 1NF jika dan hanya jika setiap atribut dari data
tersebut hanya memiliki nilai tunggal dalam satu baris.
Jadi, tabel yang belum dinormalisasi tadi perlu diubah, sehingga bentuk 1NF
menjadi seperti ini:

Inti dari normalisasi 1NF adalah tidak boleh ada grouping data ataupun
duplikasi data. Sekarang lanjut pada tahap normalisasi 2NF.

o 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.

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

Setelah dinormalisasi 2NF, tabelnya terpecah menjadi 2. Sekarang lanjut pada


tahap normalisasi 3NF.

o 3 NF
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.

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. Jadi setelah dinormalisasi 3NF akan menghasilkan tabel berikut:

Dari gambar tabel di atas dapat dilihat pada tahap normalisasi 3NF
menghasilkan 1 tabel baru dari hasil pemecahan tabel transaksi yaitu tabel
detail barang yang isinya menampung barang-barang yang dibeli.

Eitss… coba perhatikan gambar di atas! kenapa di tabel detail barang


terdapat kolom harga lagi? padahal kolom harga sudah ada di tabel barang.
Baca penjelasannya di bawah ini.

Kolom harga pada tabel detail barang digunakan untuk menyimpan harga
barang pada saat proses transaksi. Jadi, meskipun kolom harga pada tabel
barang berubah (naik/turun), harga barang yang ada pada tabel detail
barang tidak ikut berubah (fixed). Bayangkan jika kita tidak menambahkan
kolom harga pada pada tabel detail barang, maka yang terjadi total invoice
dari transaksi akan berubah seiring berubahnya harga barang.
Sumber : https://aantamim.id/normalisasi-database/

Anda mungkin juga menyukai