Normalisasi Database 2NF dan 3NF

NORMALISASI DATABASE TAHAP 2 (2-NF) DAN TAHAP 3 (3-NF)

Setelah sebelumnya saya memposting tentang normalisasi tahap 1 (1-NF), maka pada kesempatan kali ini saya akan memposting normalisasi database tahap 2 (2-NF) dan tahap 3 (3NF).

BENTUK NORMAL KE DUA (SECOND NORMAL FORM/2 NF)
Bentuk normal kedua didasari atas konsep full functional dependency (ketergantungan fungsional sepenuhnya) yang dapat didefinisikan sebagai berikut :
Jika A adalah atribut-atribut dari suatu relasi, B dikatakan full functional dependency, memiliki ketergantungan fungsional terhadap A, tetapi tidak secara tepat memiliki ketergantungan fungsional dari subset (himpunan bagian) dari A.

Syarat normal kedua (2-NF) sebagai berikut.
  1. Bentuk data telah memenuhi kriteria bentuk normal kesatu.
  2. Atribut bukan kunci (non-key) haruslah memiliki ketergantungan fungsional sepenuhnya (fully functional dependency) pada kunci utama/primary key.
Contohnya :
 
1. Tabel Pelanggan
Tabel pelanggan yang belum normal

Tabel pelanggan normal tahap 1 (1NF)

Tabel pelanggan normal tahap 2 (2NF)
Catatan : Setiap tabel sudah memiliki Primary Key (Kunci Utama) yang unik

2. Tabel Karyawan
Tabel Karyawan belum normal (Unnormal)

Tabel Karyawan dalam bentuk normal tahap 1 (1NF)

Tabel Karyawan dalam bentuk normal tahap 2 (2NF)

3. Tabel Pengiriman Barang


BENTUK NORMAL KE TIGA (THIRD NORMAL FORM / 3 NF)

Walaupun relasi 2-NF memiliki redudansi yang lebih sedikit dari pada relasi 1-NF, namun relasi tersebut masih mungkin mengalami kendala bila terjadi anomaly peremajaan (update) terhadap relasi tersebut. Anomaly update ini disebabkan oleh suatu ketergantungan transitif (transitive dependency). Kita harus menghilangkan ketergantungan tersebut dengan melakukan normalisasi ketiga (3-NF).

Syarat normal ketiga (Third Normal Form / 3 NF) sebagai berikut :
  1. Bentuk data telah memenuhi kriteria bentuk normal kedua.
  2. Atribute bukan kunci (non-key) harus tidak memiliki ketergantungan transitif, dengan kata lain suatu atribut bukan kunci (non_key) tidak boleh memiliki ketergantungan fungsional (functional dependency) terhadap atribut bukan kunci lainnya, seluruh atribut bukan kunci pada suatu relasi hanya memiliki ketergantungan fungsional terhadap priamry key di relasi itu saja.
Contonya : 


1. Tabel Pelanggan
Tabel pelanggan dalam bentuk normal tahap 3 (3NF)

2. Tabel Karyawan

Tabel Karyawan dalam bentuk normal tahap 3 (3NF)

3. Tabel Pengiriman Barang


Sekian postingan tetang normalisasi database tahap 2 (2-NF) dan tahap 3 (3-NF).
Salam.



Sumber : 





Tidak ada komentar:

Posting Komentar

Standard Internasional ISO 27001 dan Manfaat Keamanan Informasi Informasi sebagai Aset Penting Informasi adalah salah satu aset pen...