PENERAPAN BENTUK NORMALISASI

Proses perancangan database dapat dimulai dari dokumen dasar yang dipakai dalam sistem. Contoh : Toko ABC bergerak dibidang jual beli alat elektronik. diketahui sebuah dokumen dasar yaitu faktur pembelian sebagai berikut

FAKTUR PEMBELIAN Kode Supplier : G01 Tanggal : 01/11/04 Nama Supplier : Gobel Nustra Nomor : 998 Kode Nama Barang Qty Harga Jumlah A01 TV 14’ 10 1,000,000 10,000,000 A02 TV 21’ 5 1,500,000 7,500,000 TOTAL BELI 17,500,000 Jatuh tempo Faktur : 09/11/04
I. Bentuk Unnormalized • Menuliskan semua data yang akan direkam apa adanya sesuai dengan dokumen dasar, boleh tidak lengkap atau terduplikasi
No Fac 900 998 Kode Supp M02 G01 Nama Supp Maspion Gobel N Kode Brg R02 A01 A02 Nama Brg Rice Cooker TV 14’ TV 21’ Tanggal 30/10/04 01/11/04 Jatuh Tempo 07/11/04 09/11/04 Qty 4 10 5 Harga 200000 1000000 1500000 Jumlah 800000 10000000 7500000 Total Beli 800000 17500000

II.

Bentuk Normal kesatu • • Bentuk dalam flat file, dan semua field berupa ‘atomik value’ Tidak ada atribut yang berulang atau bernilai ganda
Nama Supp Maspion Gobel N Gobel N Kode Brg R02 A01 A02 Nama Brg Rice Cooker TV 14’ TV 21’ Tanggal 30/10/04 01/11/04 01/11/04 Jatuh Tempo 07/11/04 09/11/04 09/11/04 Qty 4 10 5 Harga 200000 1000000 1500000 Jumlah 800000 10000000 7500000 Total Beli 800000 17500000 17500000

No Fac 900 998 998

Kode Supp M02 G01 G01

Kelemahan pada bentuk 1NF diatas : • Inserting/penyisipan Kode suplier dan nama supplier tidak bisa dimasukan bila tidak ada transaksi pembelian. Sehingga data supplier baru dapat dimasukan/insert bila ada transaksi pembelian • Deleting/penghapusan Bila satu record dihapus, maka akan menghapus data yang lainnya, misalkan nomor factur 900 dihapus, maka berakibat pula menghapus data supllier M02 (Maspion Grup), padahal data supplier masih diperlukan Updating/pengubahan Kode dan nama supplier ditulis berkali-kali. Bila terjadi pengubahan nama supplier misalnya maka harus mengganti disemua record yang mengandung hal tersebut, jika tidak akan mengakibatkan data tidak konsisten.

. Maka field tersebut dapat dibuang. jatuh tempo. dapat diambil kunci kandidat yaitu : • No Factur (no fac) • Kode supplier (kode supp) • Kode barang (kode brg) • Bentuk tiga tabel dengan kunci tersebut. terdapat pada tabel faktur • Field QTY dan harga tidak bergantung penuh pada kunci primer no faktur. Total. ia juga tergantung fungsi pada kode barang.• Redundansi Field jumlah merupakan redundancy. data jumlah tidak maka nilai jumlah tidak sama dengan Qty x harga (kecuali sudah diformat otomatis) III. Kode supplier. karena akan mengakibatkan tidak konsisten. • Masih terdapat redundancy yaitu setiap kali satu faktur yang terdiri dari 5 macam barang yang dibeli. karena setiap kali harga dikalikan dengan kuantitas akan menghasilkan jumlah. tanggal jatuh tempo dan total. hanya data harga yang diubah. Artinya field tersebut bergantung tidak langsung dan harus dipisahkan dalam dua tabel. lihat kebergantungan fungsinya maka didapatkan tabel sbb : FD : Kode supplier  nama supplier Kode barang  nama barang No factur  tanggal. Harga. Bentuk Normal kedua Syarat : • Sudah berada pada 1NF • Tidak ada atribut/field bukan kunci yang tergantung pada sebagian field kunci (kebergantungan parsial) • Dari tabel diatas. maka 5 kali pula dituliskan no faktur. Qty. Kode barang Tabel Supplier Tabel Barang * Kode supplier Nama supplier Tabel faktur * Kode barang Nama barang * ** ** No Factur Tanggal Jatuh Tempo Qty Harga Total Kode Supllier Kode Barang Keterangan : * Kunci primer/primary key ** Kunci tamu/foreign key penghubung dari tabel dg induknya • Permasalahan pada 2Nf diatas. tanggal faktur. Tidak konsisten disebabkan karena bila ada perubahan harga.

Bentuk normal ketiga Berdasarkan permasalahan diatas. sehingga relasinya adalah : Tabel Supplier Tabel Barang * Kode supplier Nama supplier Tabel Faktur * No Faktur Tanggal Jatuh Tempo Total Kode Supllier Tabel Transkasi * No faktur ** Kode barang Qty Harga * Kode barang Nama barang ** Pengujian dengan Data Contoh Setelah dilakukan Normalisasi. bila tidak maka perancangan untuk membuat suatu database adalah gagal Contoh Relasi dengan Data Contoh Tabel Supplier Kode supplier G01 M02 Tabel Barang Kode Barang A01 A02 R02 Nama Supplier Gobel Nustra Maspion Grup Nama Barang TV 14` TV 21` Rice Cooker Tabel Faktur No Faktur Kode Supplier 900 M02 998 G01 Tabel Transaksi Barang No Faktur Kode Barang 900 R02 998 A01 988 A02 Tanggal 30/10/04 01/11/04 Jatuh Tempo 07/11/04 09/11/04 Total 800000 17500000 Qty 4 10 5 Harga 200000 1000000 1500000 . lakukan pengujian untuk memastikan kebenaran isi tabel dan hubungan antara tabel tersebut.IV. maka tabel faktur dipecah menjadi 2 menjadi Tabel Faktur dan Tabel Transaksi. Setiap tabel harus mempunyai hubungan dengan tabel lainnya.

Sign up to vote on this title
UsefulNot useful