Normalisasi Database 1NF, 2NF, & 3NF
Pengertian Normalisasi
·
Normalisasi
merupakan sebuah teknik dalam logical desain sebuah basis data yang
mengelompokkan atribut dari suatu relasi sehingga membentuk struktur relasi
yang baik (tanpa redudansi).
·
Normalisasi adalah
proses pembentukan struktur basis data sehingga sebagian besar ambiguity bisa
dihilangkan.
Tujuan Normalisasi
·
Untuk
menghilang kerangkapan data
·
Untuk
mengurangi kompleksitas
·
Untuk
mempermudah pemodifikasian data
Proses Normalisasi
·
Data
diuraikan dalam bentuk tabel, selanjutnya dianalisis berdasarkan persyaratan
tertentu ke beberapa tingkat.
·
Apabila
tabel yang diuji belum memenuhi persyaratan tertentu, maka tabel tersebut perlu
dipecah menjadi beberapa tabel yang lebih sederhana sampai memenuhi bentuk yang
optimal.
Pentingnya Normalisasi
Suatu
rancangan database disebut buruk jika :
·
Data yang
sama tersimpan di beberapa tempat
(file atau record)
(file atau record)
·
Ketidakmampuan
untuk menghasilkan informasi
tertentu
tertentu
·
Terjadi
kehilangan informasi
·
Terjadi
adanya redudansi (pengulangan) atau duplikasi data sehingga memboroskan
ruang penyimpanan dan menyulitkan saat proses updating data
·
Timbul
adanya NULL VALUE.
·
Kehilangan
informasi bisa terjadi bila pada waktu merancang database
(melakukan proses dekomposisi yang keliru).
(melakukan proses dekomposisi yang keliru).
·
Bentuk
normalisasi yang sering digunakan adalah 1st NF, 2nd NF, 3rd NF,
dan BCNF.
dan BCNF.
Normalisasi
Database
Normalisasi database terdiri dari banyak bentuk, dalam ilmu basis
data ada setidaknya 9 bentuk normalisasi yang ada
yaitu 1NF, 2NF, 3NF, EKNF, BCNF, 4NF, 5NF, DKNF,
dan 6NF. Namun dalam prakteknya dalam dunia industri bentuk normalisasi
ini yang paling sering digunakan ada sekitar 5 bentuk.
Normal Form
Data yang
direkam dan dimasukkan secara mentah dalam suatu tabel pada bentuk ini sangat
mungkin terjadi inkonsistensi dan anomali data
Contoh Normal Form1 :
Contoh Normal Form2 :
Contoh Normal Form3 :
Pada bentuk
ini ada beberapa ciri ciri yang penting, yang pertama adalah akan terjadi
anomali dalam insert, update, dan delete. Hal ini menyebabkan beberapa fungsi
DML dalam SQL tidak dapat berjalan dengan baik. Sebagai contoh jika ingin
menghapus penerbit maka data judul buku akan ikut terhapus begitu juga jika
ingin menghapus peminjam, maka data penerbit dan buku yang harusnya tidak
terhapus akan ikut hilang.
First Normal Form (1NF)
Bentuk
normal yang pertama atau 1NF mensyaratkan beberapa kondisi dalam sebuah
database, berikut adalah fungsi dari bentuk normal pertama ini.
·
Menghilangkan
duplikasi kolom dari tabel yang sama.
·
Buat tabel
terpisah untuk masing-masing kelompok data terkait dan mengidentifikasi setiap
baris dengan kolom yang unik (primary key).
Contoh Normalisasi Database 1NF ke-1:
Contoh Normalisasi Database 1NF ke-2:
Contoh Normalisasi Database 1NF ke-3:
Pada intinya
bentuk normalisasi 1NF ini mengelompokkan beberapa tipe data atau kelompok data
yang sejenis agar dapat dipisahkan sehingga anomali data dapat di atasi. Contoh
adalah ketika kita ingin menghapus, mengupdate, atau menambahkan data peminjam,
maka kita tidak bersinggungan dengan data buku atau data penerbit. Sehingga
inkonsistensi data dapat mulai di jaga.
Second normal form (2NF)
Syarat untuk
menerapkan normalisasi bentuk kedua ini adalah data telah dibentuk dalam 1NF,
berikut adalah beberapa fungsi normalisasi 2NF.
·
Menghapus
beberapa subset data yang ada pada tabel dan menempatkan mereka pada tabel
terpisah.
·
Menciptakan
hubungan antara tabel baru dan tabel lama dengan menciptakan foreign key.
·
Tidak ada
atribut dalam tabel yang secara fungsional bergantung pada candidate key tabel
tersebut.
Contoh normalisasi database bentuk 2NF ke-1 :
Contoh normalisasi database bentuk 2NF ke-2 :
Contoh normalisasi database bentuk 2NF ke-3 :
Contoh di
atas kita menggunakan tabel bantuan yaitu tabel transaksi, pada intinya bentu
kedua ini adalah tidak boleh ada field yang berhubungan dengan field lainnya
secara fungsional. Contoh Judul Buku tergantung dengan id_Buku sehingga dalam
bentuk 2NF judul buku dapat di hilangkan karena telah memiliki tabel master
tersendiri.
Third Normal Form (3NF)
Normalisasi
database dalam bentuk 3NF bertujuan untuk menghilangkan seluruh atribut atau
field yang tidak berhubungan dengan primary key. Dengan demikian tidak ada
ketergantungan transitif pada setiap kandidat key. Syarat dari bentuk normal
ketiga atau 3NF adalah :
·
Memenuhi
semua persyaratan dari bentuk normal kedua.
·
Menghapus
kolom yang tidak tergantung pada primary key.
Contoh Normalisasi Database Bentuk 3NF
Contoh normalisasi database bentuk 3NF ke-1 :
Contoh normalisasi database bentuk 3NF ke-2 :
Contoh normalisasi database bentuk 3NF ke-3 :
Semoga
Tulisan ini dapat bermanfaat bagi kita semua.
Sumber
:
1. https://rifalfahrudin.wordpress.com/2015/09/27/normalisasi-database-1nf-2nf-3nf/
2. http://destyanprobo15.blogspot.co.id/2014/11/normalisasi.html
3. https://beritati.blogspot.co.id/2015/11/contoh-proses-normalisasi-relasi-dari.html