Minggu-04_DB1 (1NF)

advertisement
NORMALISASI
Basis Data-1
C H A P T E R
4
Normalisasi
1NF
Copyright © 2005 PENS-ITS
NORMALISASI
Basis Data-1
Objectives
Tujuan:
1. Memahami pentingnya normalisasi.
2. Memahami normalisasi bentuk pertama (1NF).
3. Memahami aturan pembuatan normalisasi
1NF.
Copyright © 2005 PENS-ITS
NORMALISASI
Basis Data-1
PENTINGNYA NORMALISASI
• Suatu rancangan database disebut jelek jika :
§ Data yang sama tersimpan di beberapa tempat (file atau record)
§ Ketidakmampuan untuk menghasilkan informasi tertentu
§ Terjadi kehilangan informasi
• Misal suatu skema relasi :
CABANG (nama_cabang,aset,kota)
PINJAM (nama_cabang,nomor_hutang,nama_customer,jumlah)
• Alternatif rancangan untuk skema database tersebut adalah :
UTANG (nama_cabang, aset, kota,
nomor_hutang,nama_customer, jumlah)
• Rancangan ini akan mengakibatkan terjadinya perulangan Informasi
(data redundancy) yaitu pada attribute asset dan kota. Infomasi yang
berulang hanya memboroskan ruang penyimpanan dan menyulitkan pada
waktu proses updating data.
Copyright © 2005 PENS-ITS
NORMALISASI
Basis Data-1
PENTINGNYA NORMALISASI
• Alternatif lain dari rancangan database berikut :
PINJAM (nama_cabang, nomor_utang, nama_customer,
jumlah)
TABUNG(nama_cabang, nomor_tabungan, nama_customer,
saldo)
• Adalah :
PIN_TAB(nama_cabang, nama_customer, nomor_utang,
jumlah, nomor_tabungan, saldo)
• Dengan rancangan database seperti di atas akan timbul NULL
VALUE, yaitu jika seseorang hanya pinjam saja atau jika hanya
menabung saja.
Copyright © 2005 PENS-ITS
NORMALISASI
Basis Data-1
PENTINGNYA NORMALISASI
• Kehilangan informasi bisa terjadi bila pada waktu merancang database kita
melakukan proses dekomposisi yang keliru. Misalnya suatu skema relasi :
UTANG (nama_cabang, aset, kota, nomor_hutang, Nama_customer,
jumlah)
• Dekomposisi menjadi dua buah skema relasi:
JUML(jumlah, nama_customer)
PINJ(nama_cabang, nomor_hutang,jumlah)
• Diberikan query “Dapatkan nama cabang dimana Ali melakukan transaksi
hutang”
• Apa yang terjadi dengan informasi yang dihasilkan? Mengapa hasilnya
seperti itu?
• Tujuan normalisasi adalah mengeliminasi duplikasi informasi, memudahkan
pengubahan struktur tabel, memperkecil pengaruh perubahan struktur
database dan lain-lain.
• Bentuk normalisasi yang sering digunakan adalah 1st NF, 2nd NF, 3rd NF, dan
BCNF
Copyright © 2005 PENS-ITS
NORMALISASI
Basis Data-1
NORMALISASI 1NF
1st Normal Form (1NF)
• Suatu relation R disebut 1st NF jika dan hanya jika semua
attribute value-nya atomic (tidak boleh ada attribute yang
composit & multivalue)
• Merubah dari bentuk tabel tidak normal (unnormalized
table) menjadi bentuk normal (1NF).
Copyright © 2005 PENS-ITS
NORMALISASI
Basis Data-1
NORMALISASI 1NF
Unnormalized table (tabel tidak normal)
• Suatu tabel dikatakan unnormalized jika :
a) Mempunyai penggandaan field yang sejenis
Contoh :
Tabel dibawah adalah tabel siswa mengambil mata kuliah (MK)
SISWA
Tabel siswa diatas mempunyai 3 field yang sejenis, yaitu MK1,
MK2 dan MK3. Sehingga tabel diatas adalah termasuk
unnormalized.
Copyright © 2005 PENS-ITS
NORMALISASI
Basis Data-1
NORMALISASI 1NF
b) Elemen datanya memungkinkan untuk null (tidak berisi)
Contoh :
Ini adalah tabel yang mencatat no SIM dari siswa yang mempunyai
SIM
SISWA_SIM
Tampak dalam tabel diatas bahwa elemen data dari no SIM si-Amin
dan si-Bayu adalah null atau tidak berisi nilai. Sehingga tabel di atas
adalah termasuk unnormalized.
Copyright © 2005 PENS-ITS
NORMALISASI
Basis Data-1
NORMALISASI 1NF
NORMAL I (1NF)
• Suatu tabel dikatakan berada pada bentuk normal I jika ia tidak
berada pada bentuk unnormalized table. Jadi disini akan terjadi
proses pentransformasi dari tabel bentuk unnormalized ke bentuk
normal I. Prosesnya dinamakan normalisasi I (1NF).
Contoh :
Kalau tabel pada contoh (a) diatas kita normalisasi I, maka hasilnya
akan didapatkan seperti ini :
SISWA
Copyright © 2005 PENS-ITS
NORMALISASI
Basis Data-1
NORMALISASI 1NF
Kalau pada contoh (b) diatas kita normalisasi I, maka hasilnya
akan didapatkan seperti ini :
SISWA
SIM
Copyright © 2005 PENS-ITS
Download