Anda di halaman 1dari 3

Contoh Normalisasi Database | Pada pembahasan sebelumnya kita sudah mengetahui teori dan

tujuan dari normalisasi database. Namun, ane belum menyertakan contohnya. Menurut ane lebih
efektif jika contohnya dibuat pada section terpisah atau postingan baru. OK gan kembali kedalam
topik pembahasan, dibawah ini terdapat contoh table karyawan masih dalam bentuk unnormal.

Dari contoh table karwayan diatas terdapat group yang berulang dan belum ada kolom yang
menjadi primary key.

Contoh Normalisasi Pertama


Dari contoh table diatas agar memenuhi persyaratan normalisasi pertama maka kita harus
menambahkan beberapa data pada group yang berulang.

Persyaratan pertama dari normalisasi pertama sudah ok, karena sudah tidak ada group yang
berulang. Sekarang kita harus menetapkan primary key pada table, ini merupakan persayaratan
kedua dari normalisasi pertama. Menurut agan kolom manakah yang cocok untuk dijadikan
primary key? Ya betul, kolom NIK. Alasannya kolom lain lebih banyak bergantung pada kolom
ini.

Nah, semua persyaratan dari normalisasi pertama sudah terpenuhi. Apakah dengan struktur
database diatas sudah baik? Tentu saja belum, karena masih terdapat redudansi data dan tidak
menutup kemungkinan terjadinya anomali. Oleh karena itulah kita harus melakukan normalisasi
kedua.

Contoh Normalisasi Kedua


Persyaratan pertama dari normalisasi kedua adalah memenuhi persyaratan dari normalisasi
pertama. Untuk persyaratan ini kita sudah memenuhinya. Kemudian, kita lanjut dengan
persyaratan kedua dari normalisasi kedua, yaitu tidak boleh ada ketergantungan parsial. Oleh
karena itu mari kita simak dari table karyawan pada normalisasi pertama. Pada table tersebut
terdapat 2 primary key yaitu NIK dan Kode_Perusahaan. Sehingga memiliki 2 buah
ketergantungan. Solusinya adalah memecahnya menjadi beberapa table.

Table Karyawan

NIK Nama_Karyawan Alamat


NIK001 Haniif Fii Sabiilillah Jl. Nangka No. 10
NIK002 Yulia Safitrah Jl. Mawar No. 21
NIK003 Mufiidah Istiqomah Jl. Raya Kembangan No. 32
NIK004 Askur Mujahidin Jl. Mangga No. 60
NIK005 Silmi Qoyimah Jl. Tugu No. 70

Table Perusahaan

Kode_Perusahaan Nama_Perusahaan Kategori_Perusahaan Deskripsi_Kategori


KP001 PT. Maju Terus 1 Perusahaan Jasa
KP002 PT. Angin Ribut 1 Perusahaan Jasa
KP003 PT. Pantang Mundur 2 Perusahaan Perdagangan

KP004 PT. Semangat Selalu 2 Perusahaan Perdagangan

Dari table diatas sudah tidak ada lagi ketergantungan parsial didalam table. Kalau persyaratan
kedua dari normalisasi kedua sudah terpenuhi kita lanjut ke normalisasi ketiga.

Contoh Normalisasi Ketiga


Persyaratan pertama dari normalisasi ketiga adalah memenuhi persyaratan normalisasi kedua.
Persyaratan ini sudah terpenuhi, berarti kita lanjut ke persyaratan berikutnya. Persyaratan kedua
dari normalisasi ketiga adalah tidak boleh terdapat ketergantungan transitif. Oleh karena itu mari
kita simak table karyawan pada normalisasi kedua. Pada table perusahaan terdapat
ketergantungan transitif tepatnya pada kolom Deskripsi_Perusahaan yang bergantung pada
kolom Kategori_Perusahaan. Solusinya adalah kita harus memecah table perusahaan menjadi
beberapa table.

Table Karyawan

NIK Nama_Karyawan Alamat


NIK001 Haniif Fii Sabiilillah Jl. Nangka No. 10
NIK002 Yulia Safitrah Jl. Mawar No. 21
NIK003 Mufiidah Istiqomah Jl. Raya Kembangan No. 32
NIK004 Askur Mujahidin Jl. Mangga No. 60
NIK005 Silmi Qoyimah Jl. Tugu No. 70

Table Perusahaan

Kode_Perusahaan Nama_Perusahaan
KP001 PT. Maju Terus
KP002 PT. Angin Ribut
KP003 PT. Pantang Mundur
KP004 PT. Semangat Selalu

Table Kategori Perusahaan

Kategori_Perusahaan Deskripsi_Kategori
1 Perusahaan Jasa
2 Perusahaan Perdagangan

Semoga contoh normalisasi database ini dapat bermanfaat, kalau agan masih bingung atau
ingin memberi masukan dapat didiskusikan melalui form komentar dibawah ini. Terimakasih.

Salam,

Anda mungkin juga menyukai