NORMALISASI DAN TUGAS PRAKTEK Disusun untuk memenuhi tugas mata kuliah Basis Data
oleh :
Muslim Tagor Nababan 1083058
JURUSAN TEKNIK INFORMATIKA POLITEKNIK POS INDONESIA BANDUNG 2009
NORMALISASI Terdapat dua bentuk normal yang lebih khusus dari pada BCNF. Bentuk ini yang dikenal dengan 2NFdan 3NFsangatpenting dilihat dari perspektif sejarah. 2NF dibuat untuk menghilangkan penyimpangan yang bisa muncul padarelasi INF, 3NF dibuat untuk menghilangkan penyimpangan yang dapat muncul pada relasi 2NF dan sebagainya. Sangat sedikit database yang dibuat dengan tujuan untuk mendapatkan relasi akibat hanya dalam INF atau 3NF. Kita dapat mencatat bahwajika suatu relasi terdapat dalam BCNF maka relasi tersebut juga terdapat dalam 2NF dan 3NF Normalisasi database biasanya jarang dilakukan dalam database skala kecil, dan dianggap tidak diperlukan pada penggunaan personal. Namun seiring dengan berkembangnya informasi yang dikandung dalam sebuah database, proses normalisasi akan sangat membantu dalam menghemat ruang yang digunakan oleh setiap tabel di dalamnya, sekaligus mempercepat proses permintaan data. Berikut ini dipaparkan metodologi logis sederhana untuk menormalkan model data dalam sebuah database, diiringi contoh pembuatan database untuk tugas-tugas matakuliah dalam sebuah fakultas (fiktif) dengan atribut yang disederhanakan. Proses normalisasi model data dapat diringkas sebagai berikut:
1. Temukan entitas-entitas utama dalam model data. 2. Temukan hubungan antara setiap entitas. 3. Tentukan atribut yang dimiliki masing-masing entitas.
Normalisasi model data dilakukan dengan mengikuti langkah-langkah sederhana, mengubahnya agar memenuhi apa yang disebut sebagai bentuk normal pertama, kedua, lalu ketiga secara berturutan.
Tujuan Normalisasi adalah menyempurnakan struktur table dengan: Mengelimas adanya duplikasi informasi, Memudahkan pengubahan struktur table, Memperkecil pengaruh perubahan struktur database, dll.
st
Bentuk normalisasi yang sering digunakan adalah 1
Functional Dependency (FD)
NF , 2
NF
NF,3
rd
NF, dan BCNF.
Untuk melakuakan normalisasi,harus bias menentukan terlebih dahulu Functional Dependency (FD) atau ketergantungan Fungsional, khususnya dalam melakukan dekomposisi rancangan database, Functional Dependency (FD) dapat disimbolkan artinya B memiliki ketergantungan dengan A.
CONTOH NORMALISASI
Bentuk NORMALISASI 1NF 1
st
Normalisasi dari bentuk table tidak normal (unnormalized table) menjadi
bentuk normal (1NF). Suatu relasi R disebut
1
st NF
jika dan hanya jika kondisi
tabelnya dari
unnormalized dirubah kebuntuk normal dengan kmdisi semua nilai attribute harus simple/atomic yang tidak bias dibagi-bagi (tidak boleh ada attribute yang composit/multivalue)
CONTOH NORMALISASI 1NF
Bentuk NORMALISASI 2NF Sebuah model data dikatakan memenuhi bentuk normal kedua apabila ia memenuhi bentuk normal pertama dan setiap atribut non-identifier sebuah entitas bergantung sepenuhnya hanya pada semua identifier entitas tersebut. Syarat Normalisasi 2NF
Memenuhi criteria tabel normal (1NF)
Didalam tabel tersebut tidakada redudansi/pengulangan data dan Null Value
Field-field yang bukan PK adalah Full Dependent (Bergantung penuh) pada PK
Bentuk NORMALISASI 3NF Sebuah model data dikatakan memenuhi bentuk normal ketiga apabila ia memenuhi bentuk normal kedua dan tidak ada satupun atribut non-identifying (bukan pengidentifikasi unik) yang bergantung pada atribut non-identifying lain. Apabila ada, pisahkan salah satu atribut tersebut menjadi entitas baru, dan atribut yang bergantung padanya menjadi atribut entitas baru tersebut. Syarat Normalisasi 3NF
Harus berbeda dalam bentuk normal III (2NF).
Ketergantungan field-field yang bukan PK adalah harus secara mutlak(fulldependent). Artinya harus tidak ada transitive dependency (ketergantungan secara transitif).
BENTUK NORMALISASI BCNF Suatu relasi dalam basis data harus dirancang sedemikian rupa sehingga mereka tidak memiliki ketergantungan sebagian (partial dependecy), maupun ketergantungan transitif (transitive dependecy), seperti telah dibahas pada subbab sebelumnya. Boyce-Codd Normal Form (BCNF) didasari pada beberapa ketergantungan fungsional (functional dependencies) dalam suatu relasi yang melibatkan seluruh candidate key di dalam relasi tersebut. Jika suatu relasi hanya memiliki satu candidate key, maka hasil uji normalisasi sampai ke bentuk normal ketiga sudah identik dengan Boyce-Codd Noormal Form (BCNF).
TUGAS PRAKTEK
Contoh bentuk penulisan while dengan kata kunci continue untuk melanjutkan alur program pada pemeriksaan kondisi While:
Alur program pada pemeriksaan kondisi While:
#contoh penggunaan sp_help
Penjumlahan variable data int:
Contoh exec prosedur diatas:
Prosedur yang berfungsi untuk insert data pasien baru:
Contoh execute tambah_pasien:
Hasil pasien yang telah ditambah:
Prosedure update_pasien3:
Contoh execute update_pasien:
Hasilnya:
Prosedure delete_pasien: